Trò chơi Nim ngẫu nhiên
Đề bài
Mô tả
Xét trò chơi Nim với đống đồ vật. Hai người chơi luân phiên đi; mỗi lượt người chơi phải lấy ít nhất một vật và có thể lấy tùy ý số vật từ một đống. Người không còn nước đi (khi tất cả các đống đều rỗng) là người thua.
Kích thước của mỗi đống được chọn ngẫu nhiên và độc lập trong đoạn theo cùng một phân phối xác suất cho trước: xác suất một đống có đúng vật là .
Người chơi đi đầu tiên luôn chơi tối ưu. Hãy tính xác suất để người chơi đi trước thắng.
Nhắc lại kết quả cổ điển của trò chơi Nim: người đi trước thắng khi và chỉ khi tổng XOR (hoặc theo bit) kích thước tất cả các đống khác .
Dữ liệu vào
- Dòng đầu chứa hai số nguyên và : số đống và kích thước tối đa của một đống.
- Dòng thứ hai chứa số thực , mỗi số có tối đa chữ số sau dấu chấm. Bảo đảm tổng tất cả bằng .
Dữ liệu ra
In ra một số thực là xác suất người chơi đi trước thắng. Đáp án được chấp nhận nếu sai lệch so với đáp án đúng không quá .
Ràng buộc
- và
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 2 2 0.500000 0.250000 0.250000 |
0.62500000 | Có đống, mỗi đống nhận giá trị với xác suất . Người đi trước thua khi XOR hai đống bằng , tức hai đống bằng nhau: xác suất . Vậy xác suất thắng là . |
| 9 9 0.100000 0.100000 0.100000 0.100000 0.100000 0.100000 0.100000 0.100000 0.100000 0.100000 |
0.93687014 | Có đống, mỗi đống phân phối đều trên . |
| 1000000 5 0.000000 0.000000 1.000000 0.000000 0.000000 0.000000 |
0.00000000 | Mọi đống chắc chắn có vật. Với (chẵn) đống, tổng XOR luôn bằng nên người đi trước luôn thua. |
Bình luận