Cốc và chìa khoá

Đề bài

Mô tả

Có ba chiếc cốc giống hệt nhau xếp thành một hàng từ trái sang phải. Ban đầu, một chiếc chìa khoá được đặt dưới chiếc cốc ở giữa.

Ở mỗi lượt, người chơi tráo chiếc cốc ở giữa với một trong hai chiếc cốc còn lại, mỗi chiếc được chọn với xác suất bằng nhau (12); chiếc cốc được chọn sẽ trở thành chiếc cốc ở giữa. Trò chơi diễn ra trong n lượt, mỗi lượt chọn độc lập với các lượt khác. Chìa khoá luôn nằm yên trong chiếc cốc chứa nó lúc đầu (nó chỉ di chuyển theo cốc khi cốc bị tráo).

Sau lượt thứ n, ta đoán rằng chìa khoá đang nằm dưới chiếc cốc ở giữa. Hãy tính xác suất đoán đúng.

Số lượt n có thể rất lớn nên không được cho trực tiếp. Thay vào đó, bạn được cho một dãy a1,a2,,akn bằng tích của tất cả các phần tử trong dãy: n=a1·a2ak.

Vì lý do độ chính xác, hãy in kết quả dưới dạng một phân số tối giản. Cụ thể, tìm phân số p/q với gcd(p,q)=1, rồi in phần dư của pq khi chia cho 109+7.

Lưu ý: điều kiện gcd=1 áp dụng cho pq gốc (trước khi lấy phần dư), không phải cho phần dư của chúng.

Dữ liệu vào

  • Dòng đầu chứa số nguyên k, số phần tử của dãy.
  • Dòng thứ hai chứa k số nguyên a1,a2,,ak.

Dữ liệu ra

In ra một dòng duy nhất dạng x/y, trong đó x là phần dư của p chia 109+7 và y là phần dư của q chia 109+7.

Ràng buộc

  • 1k105
  • 1ai1018

Ví dụ

Input Output Giải thích
1
2
1/2 n=2. Xác suất chìa khoá ở giữa sau 2 lượt là 12.
3
1 1 1
0/1 n=1. Ở giữa luôn bị tráo đi nên sau đúng 1 lượt xác suất là 0.
1
3
1/4 n=3. Xác suất bằng 2213·22=312=14.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0