Bài 1.
SỐ PDS
Một số nguyên dương được gọi là số PDS nếu tích các chữ số của nó chia hết cho
tổng các chữ số của nó. Gọi PDS(N) là số PDS thứ N (được lập chỉ mục từ 1)
Yêu cầu: Tìm số PDS(N).
Dữ liệu vào: Đọc từ file SOPDS.INP chứa số nguyên dương N (N ≤ 10
9
).
Dữ liệu ra: Ghi ra file SOPDS.OUT số PDS thứ N.
Ví dụ:
SOPDS.INP
SOPDS.OUT
11
20
Giải thích: Các số PDS từ thứ 1 đến thứ 11 là: 1 2 3 4 5 6 7 8 9 10 20
Bài 2.
CHI PHÍ TÍNH TỔNG
Như đã biết thời gian để thực hiện việc tính tổng của hai số nguyên dương trên máy
tính là phụ thuộc vào độ lớn của chúng. Để đơn giản ta coi rằng cộng hai số nguyên dương
a và b phải trả chi phí cho thời gian có giá trị bằng 5% tổng giá trị a + b. Giả sử cần tính
tổng của N số nguyên dương cho trước, dễ thấy có nhiều cách tổ chức thực hiện công việc
tính toán này, mỗi cách đòi hỏi chi phí thời gian nhất định. Chẳng hạn cần tính tổng các số
10, 11, 12, 13. Ta có thể thực hiện lần lượt 10 + 11 (mất chi phí 1.05), kết quả thu được
đem cộng với 12 (mất chi phí là 1.65) và cuối cùng cộng với 13 (mất chi phí là 2.3). Như
vậy tính tổng chi phi phí cộng theo cách này là: 1.05 + 1.65 + 2.3 = 5. Một cách cộng khác
là: 10 + 11 (chi phí là 1.05), 12 + 13 (chi phí là 1.25), cuối cùng cộng hai kết quả đó với
nhau (chi phí là 2.3). Như vậy theo cách thứ hai này tổng chi phí là: 1.05 + 1.25 + 2.3 =
4.6
Yêu cầu: Cho dãy N số nguyên dương. Cần tìm cách tính tổng của các số này với
tổng chi phí thời gian là nhỏ nhất.
Dữ liệu vào: Đọc từ file SUMATION.INP:
Dòng đầu tiên chứa số nguyên dương N (2 ≤ N ≤ 15000)
Dòng thứ hai ghi N số nguyên dương mà ta cần tính tổng, hai số cách nhau bởi
một dấu cách.
Dữ liệu ra: Ghi vào file SUMATION.OUT tổng chi phí thơi gian thực hiện nhỏ nhất
theo cách tính tổng tìm được. Kết quả ghi ra lấy 2 chữ số phần thập phân.
Ví dụ:
SUMATION.INP
SUMATION.OUT
4
10 11 12 13
4.6
2
1 2
0.15
Bài 3.
SỐ ĐẲNG CẤU
Hai số được gọi là đẳng cấu nếu chúng có cùng độ dài và tập hợp vị trí của các chữ
số bằng nhau đều giống nhau (vị trí các chữ số được đánh thứ tự từ 1, từ trái sang phải)
Ví dụ:
Các số 12321, 83538, 45654 là đẳng cấu vì tập hợp các vị trí của các chữ số bằng
nhau của chúng đều là ({1,5}, {2,4}, {3})
Hai số 1232 không đẳng cấu với 2342 vì tập hợp các vị trí của các chữ số bằng
nhau của chúng lần lượt là ({1}, {2,4},{3}) và ({1,4}, {2}, {3})
12 đẳng cấu với 10, 13, 14, 92 nhưng lại không đẳng cấu với 1 vì độ dài của chúng
khác nhau và cũng không đẳng cấu với 01 vì không được có chữ số 0 ở đầu.
Với X là một số nguyên dương, gọi F(X) là số tự nhiên nhỏ nhất (chữ số đầu tiên phải
khác 0) đẳng cấu với X. Ví dụ: F(10) = 10, F(12) = 10, F(213) = 102
Yêu cầu: Cho số tự nhiên N, tìm F(1) + F(2) + ... + F(N)
Dữ liệu vào: Đọc từ file DANGCAU.INP một dòng chứa số nguyên N (1 ≤ N ≤
1000).
Dữ liệu ra: Ghi ra file DANGCAU.OUT một số nguyên duy nhất là kết quả tìm được.
Ví dụ:
DANGCAU.INP DANGCAU.OUT
15
70
Giải thích: Các số 1, 2, ..., 9 có đẳng cấu là 1. Các số 10, 12, 13, 14, 15 có đẳng cấu
là 10, số 11 đẳng cấu với chính nó nên ta có kết quả là: 1 + 1 ... + 1 + 10 + 11 + 10 + 10 +
10 +10 = 70
Bài 4.
SEQ11.*
Cho dãy gồm n số nguyên a1, a2, … , an và 2 số nguyên không âm L,R ( L ≤ R ) .
Yêu cầu: đếm số cặp ( i , j ) thỏa mãn (i < j) và L < |ai + ai+1 + … + aj| < R.
Dữ liệu vào: SEQ11.inp
_ Dòng đầu tiên chưa 3 số nguyên dương n, L, R
(n < 500000, 0 < L < R < 109 ).
_ Dòng thứ 2 chứa n số nguyên a1, a2, …, an ( |ai| < 109 ).
Kết quả: SEQ11.out
_ Ghi ra một số gồm một số nguyên duy nhất là số lượng cặp ( i , j ) đếm được.
3 0 1
1 -1 2
4
Hạn chế: Sub1: 50% số test có 0 < n < 5000.
Sub2: 50% số test có 5000 < n < 500000.
Bài 5.
SEQ12.*
Cho một dãy gồm N số fibonacci đầu tiên. Gọi Mx là số bội của x trong dãy số và Fi là số fibonacci thứ i.
Nhiệm vụ của bạn là hãy tính: Hai số đầu tiên của dãy fibonacci là 1 1.
Dữ liệu nhập: SEQ12.INP:
_ Dòng đầu tiên chứa một số nguyên T - số lượng test case
_ T dòng tiếp theo, mỗi dòng chứa một số nguyên N.
Dữ liệu xuất: SEQ12.OUT: mỗi test case xuất trên 1 dòng, một số nguyên duy nhất là tổng tìm được
3
1
2
1
4
7
3
Sub1: T < 10 và N < 100. Sub2 : T < 1000 và N <1000.
Bài 6.
Số có tổng các chữ số là số nguyên tố
Có bao nhiêu số từ A đến B mà tổng các chữ số của nó là số nguyên tố.
Input (tệp TNT.INP)
Hai số A, B (0 8
).
Output (tệp TNT.OUT)
Số lượng số tìm được
Ví dụ:
TNT.INP
TNT.OUT
Giải thích
7 20
6
Có 6 số thoả mãn là 7, 11, 12, 14, 16, 20
Chia sẻ với bạn bè của bạn: |