You are on page 1of 2

Bài 11 (w111.cpp): Viết chương trình kiểm tra một số nguyên dương có phải là số nguyên tố hay không?.

Input: Output: Gồm T dòng. Mỗi dòng ghi YES/NO tùy


+ Dòng đầu tiên ghi số nguyên dương T≤10 là số thuộc theo số tương ứng là số nguyên tố/không là số
lượng số nguyên cần kiểm tra. nguyên tố
+ T dòng tiếp theo mỗi dòng ghi một số nguyên
dương nằm trong phạm vi [1..109] là một số nguyên
cần kiểm tra
3 YES
7 NO
25 YES
29

Bài 12 (w112.cpp): Viết chương trình nhập vào số nguyên dương n. In ra màn hình n số nguyên dương
a1 , a2 ,..., an với ai là số nguyên tố nhỏ nhất là ước của i (qui ước a1=1)
Input: Một số nguyên dương n≤106 Output: In ra n số nguyên của dãy trên (cách nhau ít
nhất một dấu trống) trên một dòng
10 1 2 3 2 5 2 7 2 3 5

Bài 13 (w113.cpp): Một số được gọi là "siêu nguyên tố" nếu như nó cùng với các số nhận được từ nó bằng cách
bỏ đi 1, 2,... chữ số phần bên phải (tất nhiên phải giữ lại ít nhất một số) đều là số nguyên tố. Viết chương trình
nhập vào số nguyên dương n. In ra màn hình số lượng số siêu nguyên tố nằm trong [1...n]
Input: Một số nguyên dương n≤106 Output: Số nguyên dương n

Bài 14 (w114.cpp): Viết chương trình nhập vào hai số nguyên dương M, N. Tìm số nguyên không âm k lớn nhất
để N!=12...N chia hết cho Mk
Input: Hai số nguyên dương N, M ≤106 Output: Số nguyên k tìm được
100 10 24

Bài 15 (w115.cpp): Viết chương trình nhập vào số nguyên dương N. Hãy tính
a) Số lượng ước dương của N!
b) Tổng các ước dương của N!
Vì những số này có thể rất lớn nên chỉ cần in phần dư của nó khi chia cho 109+7
Input: Số nguyên dương N≤106 Output: Dòng đầu ghi kết quả câu a, dòng thứ hai ghi
kết quả câu b
3 4
12

Bài 16 (w106.cpp) Cho dãy n số nguyên dương a1 , a2 ,..., an , Người ta lập dãy mởi b1 , b2 ,..., bn theo qui tắc:
 b1=a1
 bi  a1  a2   ai (i=2,3,...,n)
Hãy đếm xem trong dãy b1 , b2 ,..., bn có bao nhiêu số chỉnh phương?
Input: Các biến nhập theo thứ tự: Output: Ghi một số nguyên là số lượng số chính
+ Số nguyên dương n≤106 phương có trong dãy b1 , b2 ,..., bn
+Các số nguyên dương a1 , a2 ,..., an  106
3 2
1 2 2
Bài 17 (w117.cpp) Một số nguyên được gọi là "số phong phú" nếu như nó nhỏ hơn tổng các ước (không tính
chính nó) của nó. Ví dụ, 12 là số phong phú bởi vì 12<6+4+3+2+1.
Viết chương trình nhập vào số nguyên dương N≤106. Hãy đếm xem trong đoạn [1,N] có bao nhiêu số phong phú.
Input: Ba số nguyên A, B và S Output: Kết quả tìm được
1 20 4 2

Bài 18 (w118.cpp) Viết chương trình nhập 3 số nguyên dương N, M ≤1018 Đặt P=1015+7 (P là số nguyên tố).
Hãy tính giá trị các biểu thức sau
a. (N+M) mod P
b. (N-M) mod P
c. (N*M) mod P
d. (NM) mod P
Input: Hai số nguyên dương N, M Output: Gồm 4 dòng lần lượt ghi kết quả của các câu
a, b, c, d. Chú ý kết quả nằm trong [0,P-1]
2 3 3 2
2
0
2

Bài 19 (w119.cpp) Xét số nguyên X và gọi S là tổng các ước của 2004X.
Hãy tính phần dư của S khi chia cho 29. Ví dụ, với X=1, các ước dương của 20041 là 1, 2, 3, 4, 6, 12, 167, 334,
501, 668, 1002 và 2004. Do đó S = 4704 và số dư của S chia cho 29 là 6

Input: Gồm nhiều dòng, mỗi dòng ghi một số Output: Mỗi dòng in kết quả tương ứng với X ở input
nguyên dương X (1≤X≤107)
1 6
10000 10

Bài 20 (w120.cpp) Đếm xem có bao nhiêu số nguyên trong đoạn [A, B] có tổng các chữ số là số nguyên tố
Input: Hai số nguyên A,B(1≤A≤B≤1018, B-A≤105) Output: Số lượng số tìm được
1 9 4

You might also like