Bộ sinh số giả ngẫu nhiên (để kết quả tái lập được, không dùng random thật): Cho số nguyên seed ≥0. Đặt s0=seed. Với i=1,2,3,…: si=(1103515245⋅si−1+12345)mod231. Số ngẫu nhiên thứ i là ui=si/231∈[0,1). Dãy u1,u2,u3,… được lấy theo ĐÚNG thứ tự này, dùng tuần tự trong suốt quá trình mô phỏng.
Bài toán: Mô phỏng N lần tung một cặp xúc xắc 6 mặt (các mặt 1..6 đồng khả năng). Ở lần tung thứ i (i=1,…,N), lấy hai số ngẫu nhiên kế tiếp u2i−1,u2i; mặt xúc xắc thứ nhất d1,i=⌊u2i−1⋅6⌋+1, mặt xúc xắc thứ hai d2,i=⌊u2i⋅6⌋+1 (cả hai thuộc 1..6). Tổng hai mặt là si=d1,i+d2,i∈{2,…,12}.
Cho thêm số nguyên k (2≤k≤12). Sau N lần tung, tính:
In 3 giá trị trên cùng một dòng, cách nhau bởi khoảng trắng: fk (6 chữ số thập phân), mode (số nguyên), số lần của mode (số nguyên).
Ví dụ: N=5, k=7, seed=1 → 0.200000 6 2.
Một dòng gồm 3 số nguyên N k seed (0≤N≤500000; 2≤k≤12; 0≤seed<231).
Một dòng: fk (6 chữ số thập phân), mode (nguyên), số lần của mode (nguyên) — cách nhau khoảng trắng.
Ví dụ:
Đầu vào:
0 7 1
Đầu ra:
0.000000 0 0
Đầu vào:
1 7 5
Đầu ra:
0.000000 6 1
Đang tải editor...