Dytechlab Algorithms Battle - RR Game

Xem dạng PDF

Gửi bài giải

Điểm: 1,30 (OI)
Giới hạn thời gian: 0.2s
Giới hạn bộ nhớ: 256M

Nguồn bài:
Dytechlab Algorithms Battle 2021
Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Cho ~n~ là một số ngẫu nhiên trong đoạn ~[A,B]~ với ~A~, ~B~ là 2 số nguyên dương và ~(1 \le A \le B \le 10^9)~. Chemthan và RR chơi 1 trò chơi với ~n~ tờ giấy được viết số 1 trên bàn. Ở mỗi lượt chemthan sẽ chọn 2 tờ giấy viết số ~x~, ~y~ trên bàn, RR sẽ bỏ 2 tờ giấy này vào sọt rác và thay thế bằng tờ giấy viết giá trị ~x + y~ hoặc ~|x - y|~.

Trò chơi sẽ dừng nếu 1 trong 2 trường hợp xảy ra:

  • Có 1 số lớn hơn tổng của tất cả những số còn lại
  • Tất cả các số đều bằng 0

Cuối cùng RR phải dọn các tờ giấy này nên RR muốn số lượng giấy còn lại trên bàn là nhỏ nhất còn chemthan muốn số lượng là lớn nhất. In ra kết quả là expected số lượng giấy RR phải dọn nếu cả 2 đều chơi tối ưu. Có thể chứng minh được kết quả là một phân số ~P/Q~ (với ~P~,~Q~ nguyên tố cùng nhau) cần in ra giá trị ~P \times Q^{-1}~ mod ~(10^9+7)~

Input

  • Gồm một dòng 2 số ~A~, ~B~

Output

  • Kết quả của bài toán

Sample Input 1

2 2

Sample Output 1

1

Sample Input 2

2 3

Sample Output 2

500000005

Subtask

  • ~40\%~ số test có ~1 \le A \le B \le 100~
  • ~60\%~ số test có ~1 \le A \le B \le 10^9~

Bình luận

Hãy đọc nội quy trước khi bình luận.


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