Truy Tìm Kho Báu 2

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 1400 Thời gian: 0.5s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Sau khi tới nơi có kho báu, BabyOrange tưởng rằng họ đã có kho báu nhưng thực chất lại không hề như vậy. Chỉ là một khu rừng hoang sơ với một con đường nhỏ giữa khu rừng. Vì tò mò, họ quyết định đi trên con đường đó. Trên đường, cậu phát hiện có một bức tường chặn giữa đường, giữa bức tường có một cánh cửa bị khóa. Cậu còn phát hiện trên bức tường có khắc một dãy \(N\) con số và một con số \(S\).
Đột nhiên, một dòng chữ trên bức tường bỗng phát sáng: "Muốn bước qua bức tường, cần tìm ra mật mã để mở phong ấn, mật mã chính là tổng số lượng các đoạn liên tiếp trên phiến đã có tổng chia hết cho \(S\)"
Hãy giúp BabyOrange giải mật mã nhé
Lưu ý: Dãy số có thể có số âm 🙂

Input

  • Dòng đầu chứa 2 số nguyên \(N\) \((1 \le n \le 200000)\)\(S\) \((-10^{14} \le S \le 10^{14})\)
  • Dòng thứ hai gồm n số nguyên dương \((-10^9 \le {n_i} \le 10^9)\)

Output

  • Gồm một số chính là kết quả đề bài

Example

Test 1

Input
5 3
1 2 -1 4 2
Output
4
Note

Các đoạn con liên tiếp có tổng chia hết cho 3 là:
{1, 2}; {1. 2, -1, 4}; {-1, 4}; {4, 2}

Test 2

Input
8 5
4 1 3 -8 5 -2 7 3
Output
13

Bình luận

Mới nhất
Tải bình luận...

Không có bình luận nào.

Kỳ thi: