VM 10 Bài 13 - Mực in

Xem dạng PDF

Gửi bài giải

Điểm: 0,57 (OI)
Giới hạn thời gian: 0.6s
Giới hạn bộ nhớ: 512M
Input: stdin
Output: stdout

Nguồn bài:
VM10 - Tác giả : Nguyễn Minh Hiếu
Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Hệ thống ngôn ngữ ở đất nước ~X~ có ~N~ ký tự là ~C_{1}~, ~C_{2}~, ...~C_{n}~ và mọi văn bản lưu thông ở đây đều phải viết bằng ngôn ngữ này. Để in ~1~ ký tự ~C_{i}~ nào đó sẽ tốn ~1~ lượng mực in là ~M_{i}~ đơn vị. Có một nhà toán học ngốc nghếch cứ thắc mắc là với một lượng mực in là ~S~ đơn vị thì có thể in được bao nhiêu xâu ký tự khác nhau mà lại sử dụng vừa hết đúng ~S~ đơn vị nhỉ? Ông ta cứ thắc mắc câu hỏi đó đến mức lẩn thẩn hết cả người.

Bạn là một học sinh chuyên Tin/một sinh viên CNTT tài năng, hãy lập trình giúp ông ấy giải quyết bài toán này nhé.

Input

Dòng đầu tiên gồm ~2~ số nguyên dương ~N~ và ~S~ (~N \leq 26~, ~S \leq 10^{200}~)

~N~ dòng tiếp theo, dòng thứ ~i~ dòng gồm ~1~ số nguyên dương ~M_{i}~ cho biết lượng mực cần thiết để in ký tự ~C_{i}~ (~M_{i} \leq N~).

Output

Ghi ra (số lượng xâu ký tự khác nhau có thể in được với lượng mực là ~S~) mod ~777777777~.

Sample Input

4 3
1
3
2
4

Sample Output

4

Đang tải...