Tủ Quần Áo Kỳ Diệu
Nộp bài giải
Điểm:
5,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Đầu vào:
stdin
Đầu ra:
stdout
Dạng bài
Ngôn ngữ cho phép
Ada, Algol, Assembly, Awk, C, C#, C++, D, Dart, Forth, Fortran, Go, Groovy, Java, Javascript, Kotlin, Lisp, Lua, Nim, ObjC, Pascal, Perl, PHP, Pike, Python, Racket, Ruby, Rust, Scheme, Scratch, Sed, TCL, Typescript, V, Zig
Nastya có một chiếc tủ quần áo kỳ diệu. Vào cuối mỗi tháng, số váy trong tủ tăng lên gấp đôi (số váy cuối tháng bằng hai lần số váy đầu tháng).
Tuy nhiên, ngay sau khi nhân đôi, tủ sẽ ăn mất đúng một chiếc váy với xác suất (nếu trong tủ không còn chiếc váy nào thì không có gì để ăn). Điều này xảy ra ở mọi tháng trừ tháng cuối cùng trong năm — tháng cuối cùng chỉ nhân đôi mà thôi.
Một năm ở vương quốc nơi Nastya sống dài đúng tháng. Ban đầu tủ có chiếc váy. Hãy tính kỳ vọng số váy trong tủ sau một năm, lấy theo modulo (giá trị này luôn là số nguyên).
Dữ liệu vào
Một dòng chứa hai số nguyên và .
Dữ liệu ra
Một số nguyên duy nhất — kỳ vọng số váy sau một năm, lấy modulo .
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 2 0 | 4 | Năm chỉ có tháng (tháng cuối), tủ chỉ nhân đôi: . |
| 2 1 | 7 | Sau tháng : số váy là với xác suất , là với xác suất . Sau tháng (nhân đôi): hoặc , mỗi cái xác suất . Kỳ vọng . |
| 3 2 | 21 | Kỳ vọng sau tháng là , sau tháng là , sau tháng (nhân đôi) là . |
| 0 24 | 0 | Tủ rỗng nên không có gì để nhân đôi hay ăn. |
Bình luận