You are on page 1of 4

1.

Một số nguyên không âm x được gọi là đẹp nếu như x chia hết cho một trong ba số sau: 4,
7 và 11. Hãy đếm số lượng số đẹp x thỏa mãn L ≤ x ≤ R.
Dữ liệu:
- Dòng đầu tiên chứa số T tương ứng với số lượng bộ test.
- T dòng tiếp theo, mỗi dòng chứa 2 sô nguyên không âm tương ứng với L và R.
Kết quả: In ra T dòng, mỗi dòng chứa một số duy nhất tương ứng với số lượng số đẹp.
Ví dụ:
DIV11.INP DIV11.OUT Giải thích
2 3 - Trong test ví dụ đầu tiên, có ba
1 10 3 số thỏa mãn là 4, 7 và 8.
11 15 - Trong test ví dụ thứ hai, có ba
số thỏa mãn là 11, 12 và 14.

Giới hạn: Trong tất cả các test, T ≤ 20.


- Subtask 1 (60%): 0 ≤ L ≤ R ≤ 106 .
- Subtask 2 (40%): 0 ≤ L ≤ R ≤ 1012

2.

Cho phương trình:


x 2  S ( x).x  N  0
Trong đó x, N là những số nguyên dương, S ( x) bằng tổng các chữ số của x .
Yêu cầu: Cho trước giá trị N . Hãy tìm giá trị x nhỏ nhất thỏa mãn phương trình trên.
Input: một số nguyên duy nhất N (1  N  1018 ).
Output: Ghi ra một số nguyên duy nhất x nhỏ nhất thỏa mãn phương trình. Trong trường hợp
không tìm được x thì ghi ra -1.
Ví dụ:
solve.inp solve.out

2 1
4 -1
Ràng buộc:
- Có 40% số test ứng với 40% số điểm của bài có N  104.
- Có 30% số test khác ứng với 30% số điểm của bài có N  1010.
3.

Cho dãy số nguyên A có N phần tử, dãy số nguyên B có M phần tử. Hãy đếm xem có bao nhiêu
cặp dãy con không liên tiếp của A và dãy con không liên tiếp của B, sao cho giá trị từng phần tử
xét từ đầu đến cuối của hai dãy con này y hệt nhau.
Một dãy con không liên tiếp của mảng là một dãy con được tạo thành từ việc xóa một số phần tử
trong mảng mà không thay đổi thứ tự của những phần tử còn lại. Hai cặp dãy con không liên tiếp
được xem là phân biệt và thêm vào kết quả, nếu như chỉ số của những phần tử xóa ở dãy A hoặc
B ở cặp này, phân biệt với chỉ số của những phần tử xóa ở dãy A hoặc B ở cặp kia.

Do kết quả có thể khá lớn, in ra số cặp tính được chia dư cho 109 + 7

Dữ liệu

- Dòng đầu tiên gồm hai số nguyên N và M (1 ≤ N, M ≤ 2 × 103 ) — biểu diễn dộ dài mảng
A và B.
- Dòng tiếp theo gồm N số nguyên Ai (1 ≤ Ai ≤ 105) — dãy A.
- Dòng tiếp theo gồm M số nguyên Bi (1 ≤ Bi ≤ 105) — dãy B.

Kết quả • In ra một số nguyên là số cặp thỏa mãn chia dư cho 109 + 7

Ví dụ:

csub.inp csub.out Giải thích

2 2 3 – A có những dãy con (), (3), (6), (3, 6)


3 6 – B có những dãy con (), (6), (3), (6, 3)
6 3 – Những cặp dãy con thỏa mãn là: ((), ()), ((3), (3)), ((6), (6))

4.

Cho hai số nguyên dương k và n (k ≤ n). Đếm số bộ số nguyên dương A1, A2, A3, . . . , Ak sao cho:

- 1 ≤ Ai ≤ n, với mọi i thỏa mãn 1 ≤ i ≤ k,


- Ai là ước của Ai+1, với mọi i thỏa mãn 1 ≤ i < k.

Dữ liệu: Gồm một dòng duy nhất lần lượt chứa hai số n và k.

Kết quả: In ra 1 số duy nhất là đáp án sau khi đã chia lấy dư cho 109 + 7.

Ví dụ:

cmul.inp cmul.out Giải thích

3 2 5 Có 5 bộ thỏa mãn:
{1, 1}, {1, 2}, {1, 3}, {2, 2}, {3, 3}
3 3 7 Co 7 bộ thỏa mãn:
{1,1,1}, {1,1,2}, {1,2,2}, {2,2,2}, {1,1,3},
{1,3,3}, {3,3,3}
Ràng buộc:

- Subtask 1 (25%): n ≤ 15;


- Subtask 2 (35%): n ≤ 104, k ≤ 50;
- Subtask 3 (40%): n ≤ 105, k ≤ 50;

5. cseq.cpp
Cho dãy số x1, x2, . . . , xn. Hãy đếm số lượng dãy con (có ít nhất một phần tử, có thể không liên tiếp)
có trung bình cộng (tổng giá trị các phần tử chia cho số lượng phần tử) đúng bằng a. Vì đáp án có thể
rất lớn nên bạn được yêu cầu đưa ra phần dư của số lượng dãy con sao khi chia cho 109 + 7.
Input:
Dòng đầu tiên ghi số nguyên dương T – số bộ dữ liệu vào. Mỗi bộ dữ liệu vào có định dạng như sau:
- Dòng thứ nhất ghi hai số nguyên n, a (1 ≤ n, a ≤ 200) – số phần tử của dãy số và giá trị a trên
đề bài.
- Dòng thứ hai ghi n số nguyên dương x1, x2, . . . , xn (xi ≤ 200) mô tả dãy số.
Output: Một số nguyên duy nhất là số dãy con khi chia lấy dư cho 109 + 7.
Ví dụ:

cseq.inp cseq.out Giải thích

3 5 • Ở ví dụ thứ nhất, các dãy con cần đếm là


4 6 0 – [x3] = [6]
5 7 6 7 1 – [x1, x2] = [5, 7]
5 100
– [x1, x4] = [5, 7]
4 2 5 10 5
6 100 – [x1, x2, x3] = [5, 7, 6]
77 97 114 105 115 97 – [x1, x3, x4] = [5, 6, 7].
• Ở ví dụ thứ hai, các dãy con đều có trung bình cộng
nhỏ hơn 100.
• Ở ví dụ thứ ba, dãy con duy nhất cần đếm là: [x1, x2,
x3, x5, x6] = [77, 97, 114, 115, 97].

Ràng buộc:
- Subtask 1 (20% số test): n ≤ 16; a, xi ≤ 50
- Subtask 2 (40% số test): n ≤ 50; a, xi ≤ 50
- Subtask 3 (40% số test): Không có ràng buộc gì thêm
6.

Bờm rất thích số học. Mới đây Bờm tìm được một tài liệu định nghĩa số bất thường như sau: Một
số được coi là bất thường, nếu tổng các chữ số và tổng bình phương các chữ số (trong hệ thập
phân) của nó nguyên tố cùng nhau.Ví dụ: số 23, số 41 … là các số bất thường.
Bờm rất thích thú với định nghĩa số bất thường này và Bờm muốn nhờ các bạn xác định số
lượng số bất thường trong đoạn [L,R]
Input: gồm hai số nguyên L và R (1<=L, R<=1018).
Output:gồm 1 số nguyên là kết quả cần tìm.
Ví dụ:
sbt.inp sbt.out sbt.inp sbt.out
10 11 1 100 150 19
Ràng buộc:
- Subtask 1(40%): 1<= L, R <=106
- Subtask 1(30%): 1<=L, R<=109
- Subtask 2(30%): 1<=L, R<=1018
7.
Cho N, S, K. Hãy đếm số dãy có K phần tử là số nguyên dương sao cho tích hai phần tử
cạnh nhau luôn không lớn hơn N, đồng thời tổng của hai phần tử đó luôn không lớn hơn S.
Đưa ra kết quả chia dư cho 109 + 7.
Dữ liệu:
- Dòng đầu tiên gồm số nguyên N, S (1 ≤ N, S ≤ 109).
- Dòng thứ hai gồm số nguyên K (2 ≤ K ≤ 50).
Kết quả: Một dòng duy nhất gồm kết quả của bài toán chia dư cho 109 + 7.
Ví dụ:

cseq1.inp cseq1.out Giải thích

3 3 3 Có 3 dãy bộ thỏa mãn:


2 {1, 1}, {1, 2}, {2,1}
3 3 5 Có 5 dãy bộ thỏa mãn:
3 {1, 1, 1}, {1,1, 2}, {1,2,1},{2,1,1},{2,1,2}
Ràng buộc:
- Subtask 1: 1 ≤ N, S ≤ 1000 (20% số điểm).
- Subtask 2: không có ràng buộc gì thêm (80% số điểm)

You might also like