Điểm:
1700 (p)
Thời gian:
2.0s
Bộ nhớ:
1G
Input:
bàn phím
Output:
màn hình
Bạn được cho một xâu \(S\) gồm các chữ số từ \(1\) đến \(9\).
Nhiệm vụ của bạn là đếm số cặp số \((i,j)\) (\(1 \leq i \leq j \leq |S|\)) thỏa mãn điều kiện như sau: Trong hệ cơ số thập phân, các chữ số từ \(i\) đến \(j\) trên xâu \(S\) tạo thành một số chia hết cho \(2019\).
Vì làm thế thì dễ quá nên bạn sẽ phải xử lý \(q\) truy vấn, chúc may mắn!
Input
- Dòng đầu tiên nhập số \(q\) là số truy vấn.
- Sau đó là \(q\) dòng, mỗi dòng nhập một xâu \(S\).
- Dữ liệu đảm bảo tổng độ dài các xâu \(S\) nhập vào không quá \(5 \cdot 10^5\).
Output
- Gồm \(q\) dòng, mỗi dòng in ra một số duy nhất là kết quả bài toán.
Scoring
- Subtask #1 (\(40\%\) số điểm): Độ dài các xâu \(S\) nhập vào không quá \(18\).
- Subtask #2 (\(30\%\) số điểm): Tổng độ dài các xâu \(S\) nhập vào không quá \(10000\).
- Subtask #3 (\(30\%\) số điểm): Không có ràng buộc gì thêm.
Example
Sample input
3
1817181712114
14282668646
2112
Sample output
3
2
0
Note
Trong truy vấn \(1\), có \(3\) cặp số thỏa mãn \((1,5)\) (tạo được số \(18171\)), \((5,9)\) (tạo được số \(18171\)) và \((9,13)\) (tạo được số \(12114\)).
Nguồn: Atcoder
Bình luận
ai thấy test sai thì báo cho mình nha, thanks!
1 bình luận nữa