Luyện Tập Kiểu Dữ Liệu, Toán Tử, If Else

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 66

LUYỆN TẬP KIỂU DỮ LIỆU, TOÁN TỬ, IF ELSE

Bài 1. 224A ............................................................................................................ 2


Bài 2. 50A .............................................................................................................. 2
Bài 3. 1A................................................................................................................. 3
Bài 4. Frog .............................................................................................................. 3
Bài 5. 515A ............................................................................................................ 4
Bài 6. Mua nước ..................................................................................................... 5
Bài 7. 1061A .......................................................................................................... 5
Bài 8. 996A ............................................................................................................ 6
Bài 9. 476A ............................................................................................................ 6
Bài 10. 599A .......................................................................................................... 6
Bài 11. 546A .......................................................................................................... 8

1
---------------------------------------------------
28Tech - Become A Better Developer
Website : https://28tech.com.vn
Youtube : https://youtube.com/28tech_
Facebook page : https://www.facebook.com/28TechAndEdu
Hotline : 0965303260
---------------------------------------------------

BÀI TẬP BUỔI 2


Bài 1. 224A
Cho biết diện tích của ba mặt có chung đỉnh của hình hộp chữ nhật, tính tổng độ dài
12 cạnh của hình hộp chữ nhật đó.
Input
3 số nguyên dương không vượt quá 10^4 là diện tích của ba mặt có chung đỉnh.
Output
Tổng của tất cả các cạnh của hình hộp chữ nhật.
Ví dụ
Input Output
466 28

Link submit : https://codeforces.com/problemset/problem/224/A


Bài 2. 50A
Bạn được cung cấp một bảng hình chữ nhật có kích thước M × N hình vuông đơn
vị. Ngoài ra, bạn được cung cấp một số lượng không giới hạn các mảnh domino
tiêu chuẩn kích thước 2 × 1. Bạn được phép xoay các mảnh domino. Bạn được yêu
cầu đặt càng nhiều domino càng tốt trên bảng để đáp ứng các điều kiện sau:
1. Mỗi domino hoàn toàn bao gồm hai hình vuông đơn vị.
2. Không có hai domino trùng nhau.
3. Mỗi domino nằm hoàn toàn bên trong bảng. Nó được phép chạm vào các cạnh
của bảng.
Tìm số lượng domino tối đa thỏa mãn điều kiện trên.
Input
2
Trong một dòng duy nhất, bạn được cung cấp hai số nguyên M và N - kích thước
bảng theo hình vuông (1 ≤ M ≤ N<= 16).
Output
Xuất ra một số - số lượng domino tối đa, có thể được đặt.
Ví dụ
Input Output
33 4
24 4

Link submit : https://codeforces.com/problemset/problem/50/A

Bài 3. 1A
Quảng trường Nhà hát ở thủ đô Berland có hình chữ nhật với kích thước n × m mét.
Nhân dịp kỷ niệm thành phố, một quyết định đã được đưa ra để lát Quảng trường
bằng những viên bằng đá granit vuông. Mỗi viên đá hình vuông có kích thước a ×
a.
Số lượng viên đá ít nhất cần thiết để lát Quảng trường là bao nhiêu? Nó được phép
che phủ bề mặt lớn hơn Quảng trường Nhà hát. Nó không được phép phá vỡ các
viên đá. Các cạnh của viên đá phải song song với các cạnh của Quảng trường.
Input
Đầu vào chứa ba số nguyên dương trong dòng đầu tiên: n, m và a (1 ≤ n, m, a ≤
10^9).
Output
Viết số lượng viên đá cần thiết để lát kín quảng trường.
Ví dụ
Input Output
664 4

Link submit : https://codeforces.com/problemset/problem/1/A


Bài 4. Frog
Một con ếch hiện đang ở điểm 0 trên trục tọa độ Ox. Nó nhảy theo thuật toán sau:
bước nhảy thứ nhất là a đơn vị về bên phải, bước nhảy thứ hai là b đơn vị về bên
trái, bước nhảy thứ ba là a đơn vị bên phải, bước nhảy thứ tư là b đơn vị bên trái,
v.v. .Nếu con ếch đã nhảy một số lần chẵn (trước lần nhảy hiện tại), nó nhảy từ vị
trí hiện tại x sang vị trí x + a, mặt khác, nó nhảy từ vị trí hiện tại x sang vị trí x − b.
3
Nhiệm vụ của bạn là tính toán vị trí của ếch sau k bước nhảy
Input
3 số trên cùng một dòng tương ứng a,b,k (1<=a,b,k<=10^9), tương ứng với khoảng
cách nhảy sang phải, sang trái và số lượng bước nhảy.
Output
Vị trí của con ếch sau k bước nhảy.
Ví dụ
Input Output
523 8

Bài 5. 515A
Một ngày nào đó, Drazil muốn hẹn hò với Varda. Drazil và Varda sống trên máy
bay của Cartesian. Nhà của Drazil nằm ở điểm (0, 0) và nhà của Varda nằm ở điểm
(a, b). Trong mỗi bước, anh ta có thể di chuyển trong một khoảng cách 1 đơn vị
theo hướng ngang hoặc dọc. Nói cách khác, từ vị trí (x, y) anh ta có thể đi đến các
vị trí (x + 1, y), (x - 1, y), (x, y + 1) hoặc (x, y - 1).
Thật không may, Drazil không có ý thức về hướng di chuyển. Vì vậy, anh ta chọn
ngẫu nhiên hướng đi mà anh ta sẽ đi trong mỗi bước. Anh ta có thể vô tình trở về
nhà trong chuyến đi của mình. Drazil thậm chí có thể không nhận thấy rằng anh ấy
đã đến (a, b) và tiếp tục đi.
May mắn thay, Drazil đã đến vị trí (a, b) thành công. Drazil nói với Varda: "Tôi
phải mất chính xác một số để đi từ nhà tôi đến nhà bạn". Nhưng Varda bối rối về
lời nói của mình, cô không chắc chắn rằng có thể đi từ (0, 0) đến (a, b) trong các
bước cho trước. Bạn có thể tìm ra?
Input
Bạn được cung cấp ba số nguyên a, b và s (- 10^9 ≤ a, b <=10^9, 1 ≤ s ≤ 2.10^9)
trong một dòng.
Output
Nếu bạn nghĩ Drazil đã phạm sai lầm và không thể thực hiện chính xác các bước và
đi từ nhà của anh ấy đến nhà của Varda, hãy in "No" (không có dấu ngoặc kép).
Nếu không, hãy in "Yes".
Ví dụ
Input Output
5 5 11 NO
-5 5 12 YES

4
Link submit : https://codeforces.com/problemset/problem/515/A
Bài 6. Mua nước
Polycarp muốn nấu một món súp. Để làm điều đó, anh ta cần mua chính xác n lít
nước.
Chỉ có hai loại chai nước trong cửa hàng gần đó - chai 1 lít và chai 2 lít. Có vô số
chai của hai loại này trong cửa hàng.
Chai loại thứ nhất có gía a burles và chai loại thứ hai có giá tương ứng b burles.
Polycarp muốn chi càng ít tiền càng tốt. Nhiệm vụ của bạn là tìm ra số tiền tối thiểu
(bằng burles) Polycarp cần mua chính xác n lít nước ở cửa hàng gần đó nếu chai
loại thứ nhất có giá a burles và chai loại thứ hai có giá b burles.
Input
3 số n,a,b (1<=n<=10^12, 1<=a,b<=1000) tương ứng với số lit nước cần mua, a và
b.
Output
Số tiền ít nhất để mua được n lit nước.
Ví dụ
Input Output
1000000000000 42 88 42000000000000

Bài 7. 1061A
Bạn có số lượng xu không giới hạn với các giá trị 1,2,3,……n (từ 1 tới n). Bạn
muốn chọn một số bộ tiền có tổng giá trị S.
Nó được phép có nhiều đồng tiền có cùng giá trị trong tập hợp. Số lượng đồng xu
tối thiểu cần thiết để có được tổng S là bao nhiêu?
Input
Dòng duy nhất của đầu vào chứa hai số nguyên n và S (1≤n≤100000, 1 ≤S≤10^9)
Output
In chính xác một số nguyên - số lượng xu tối thiểu cần thiết để có được tổng S.
Ví dụ
Input Output
6 16 3
5 11 3

Link submit : https://codeforces.com/problemset/problem/1061/A

5
Bài 8. 996A
Allen có rất nhiều tiền. Anh ta có n đô la trong ngân hàng. Vì lý do bảo mật,
anh ta muốn rút tiền mặt (chúng tôi sẽ không tiết lộ lý do tại đây). Các mệnh giá
cho hóa đơn đô la là 1, 5, 10, 20, 100. Số hóa đơn tối thiểu mà Allen có thể nhận
được sau khi rút toàn bộ số dư của mình là bao nhiêu?
Input
Số nguyên dương n (1<=n<=1000 000 000).
Output
Số lượng hóa đơn nhỏ nhất mà Allen có thể nhận được
Ví dụ
Input Output
125 3
Bài 9. 476A
Dreamoon muốn leo lên một cầu thang gồm n bước. Anh ta có thể leo 1 hoặc
2 bước mỗi lần di chuyển. Dreamoon muốn số lần di chuyển là bội số của một số
nguyên m.
Số lượng di chuyển tối thiểu làm cho anh ta leo lên đỉnh cầu thang thỏa mãn điều
kiện của anh ta là gì?
Input
Dòng đơn chứa hai số nguyên cách nhau n, m (0 <n ≤ 10000, 1 <m<=10).
Output
In một số nguyên duy nhất - số lượng di chuyển tối thiểu là bội số của m. Nếu
không có cách nào anh ta có thể leo lên thỏa mãn điều kiện in - 1.
Ví dụ
Input Output
10 2 6
Chú ý : không sử dụng vòng lặp
Link submit : https://codeforces.com/problemset/problem/476/A

Bài 10. 599A


Hôm nay Patrick chờ đợi một chuyến thăm từ người bạn SpPal của mình. Để chuẩn
bị cho chuyến thăm, Patrick cần mua một số quà tặng ở hai cửa hàng gần nhà. Có
một con đường dài d1 mét giữa nhà anh ta và cửa hàng đầu tiên và một con đường
dài d2 mét giữa nhà anh ta và cửa hàng thứ hai. Ngoài ra, có một con đường dài d3
kết nối trực tiếp hai cửa hàng này với nhau. Giúp Patrick tính toán khoảng cách tối
6
thiểu mà anh ta cần đi bộ để đến cả hai cửa hàng và trở về nhà.
Patrick luôn bắt đầu tại nhà của mình. Anh ta nên ghé thăm cả hai cửa hàng chỉ di
chuyển dọc theo ba con đường hiện có và trở về nhà của anh ta. Anh ta không ngại
ghé thăm cùng một cửa hàng hoặc đi qua cùng một con đường nhiều lần. Mục tiêu
duy nhất là giảm thiểu tổng quãng đường đã đi.

Input
Dòng đầu tiên của đầu vào chứa ba số nguyên d1, d2, d3 (1 <=d1, d2, d3<= 10^8) -
độ dài của các đường dẫn.
d1 là chiều dài của con đường nối nhà Patrick và cửa hàng đầu tiên;
d2 là chiều dài của con đường nối nhà Patrick và cửa hàng thứ hai;
d3 là chiều dài của đường dẫn kết nối cả hai cửa hàng.
Output
In khoảng cách tối thiểu mà Patrick sẽ phải đi bộ để ghé thăm cả hai cửa hàng và
trở về
Ví dụ
Input Output
10 20 30 60

Link submit : https://codeforces.com/problemset/problem/599/A

7
Bài 11. 546A
Một người lính muốn mua w quả chuối trong cửa hàng. Anh ta phải trả k đô la cho
quả chuối đầu tiên, 2k đô la cho quả thứ hai và cứ thế (nói cách khác, anh ta phải
trả i · k đô la cho quả chuối thứ i).
Anh ta có n đô la. Anh ta phải vay bao nhiêu đô la từ người bạn lính của mình để
mua chuối?
Input
Dòng đầu tiên chứa ba số nguyên dương k, n, w (1 ≤ k, w ≤1000, 0 ≤n≤109), chi phí
của quả chuối đầu tiên, số đô la ban đầu mà người lính có và số chuối anh ta muốn.
Output
Xuất ra một số nguyên - số đô la mà người lính phải vay từ bạn của mình. Nếu anh
ta không phải vay tiền, đầu ra là 0.
Ví dụ
Input Output
3 17 4 13

Link submit : https://codeforces.com/problemset/problem/546/A

8
---------------------------------------------------
28Tech - Become A Better Developer
Website : https://28tech.com.vn
Youtube : https://youtube.com/28tech_
Facebook page : https://www.facebook.com/28TechAndEdu
Hotline : 0965303260
---------------------------------------------------
BÀI TẬP BUỔI 3 (VÒNG LẶP)

Bài 1.

Nhập vào giá trị của n nguyên dương, tính tổng sau và in kết quả ra màn
hình.
S=1+2+3+….+n
Bài 2.

Nhập vào giá trị của n nguyên dương, tính tổng sau và in kết quả ra màn
hình.
S=1 ²+2²+3²+4²+…..+n².
Bài 3.

Nhập vào giá trị của n, tính tổng các số nguyên dương không vượt quá n,
chia hết cho 3.
Bài 4.

Nhập vào n nguyên dương, tính và in tổng sau ra màn hình, chú ý lấy tới 3
số sau dấu thập phân.
S=1+1/2+1/3+1/4+….+1/n
Bài 5.

Nhập vào n nguyên dương, tính và in tổng sau ra màn hình, chú ý kết quả lấy
tới 2 số sau dấu thập phân.

1
S=1/2 +1/4 +1/6+1/8+…….+1/(2n).
Bài 6.

Nhập vào n nguyên dương, tính và in kết quả của dãy phép tính sau đây.
S=-1 + 2 - 3 + 4 -5 +…..+ (-1)^n*n
Bài 7.

Nhập vào n nguyên dương, tính và in tổng sau ra màn hình.


S=2+4+6+8+…...+2*n
Bài 8.

Nhập vào n nguyên dương, tính và in tổng sau ra màn hình.


S=1+3+5+7+…..+2*n-1
Bài 9.

Nhập vào n và tính tổng sau, kết quả in ra màn hình.


S=1^3+2^3+3^3+4^3+……+n^3.
Bài 10.

Nhập n không âm, tính và in ra n!.


n!=1.2.3……n

Bài 11.

Nhập x,y nguyên không âm, tính x^y và in kết quả ra màn hình.
Ví dụ
Input
23
Output
8
Bài 12.

Nhập vào n(0<=n<=10^18), đếm số lượng chữ số của n và in ra kết quả.


Ví dụ
Input
2
123456789
Output
9
Bài 13.

Nhập vào n (0<=n<=10^18), tính tổng các chữ số của n, và in ra kết quả
Ví dụ
Input
12341
Output
11
Bài 14.

Nhập vào n(0<=n<=10^18), tính tổng các chữ số là số chẵn và tổng các chữ
số là số lẻ, in ra 2 tổng chẵn lẻ trên 2 dòng.
Ví dụ
Input
1234
Output
64
Bài 15.

Nhập vào n (0<=n<=10^18), in ra số lượng chữ số chẵn, lẻ của n.


Ví dụ
Input
12111
Output
14
Bài 16.

Nhập vào n nguyên (0<=n<=10^18). Đếm số lượng chữ số của n là số


nguyên tố.

3
Ví dụ
Input
1222333999888
Output
6
Bài 17.

Số đẹp được định nghĩa là số mà trong đó số lượng chữ số chẵn và lẻ của n


là bằng nhau. Nhập vào một số nguyên dương n (0<=n<=10^18). Nếu số nhập vào
là số đẹp, thì in ra “YES”, trường hợp ngược lại in ra “NO”.
Ví dụ
Input
111222
Output
YES

Bài 18.

Cho số nguyên dương n biểu diễn n dưới dạng tổng của các số nguyên tố
sao cho số lượng số hạng trong tổng là lớn nhất.
Input
Số nguyên dương n (2<=n<=100000).
Output
Dòng đầu tiên là số lượng số hạng lớn nhất tìm được
Dòng thứ 2 là các số hạng trong biểu diễn n dưới dạng tổng của các số nguyên tố
Ví dụ
Input
6
Output
3
222
Input
4
5
Output
2
23
Submit tại: https://codeforces.com/problemset/problem/749/A

Bài 19.

Olesya thích các số gồm n chữ số và Rodion chỉ thích các số chia hết cho t.
Tìm một số số thỏa mãn cả hai.
Nhiệm vụ của bạn là: cho n và t in một số nguyên lớn hơn 0 bao gồm n chữ số chia
hết cho t. Nếu số đó không tồn tại, in - 1.
Input
Dòng đơn chứa hai số, n và t (1 <= n<= 100, 2 ≤ t <=10) - độ dài của số và số nên
chia hết cho.Output
In một số dương như vậy mà không có số 0 đứng đầu, - câu trả lời cho vấn đề, hoặc
- 1, nếu số đó không tồn tại. Nếu có nhiều câu trả lời có thể, bạn được phép in bất
kỳ câu trả lời nào.
Ví dụ
Input
32
Ouput
712
Submit tại: https://codeforces.com/problemset/problem/584/A

Bài 20.

Mishka là một con gấu bắc cực nhỏ. Như đã biết, những chú gấu nhỏ thích
dành thời gian rảnh của mình để chơi xúc xắc cho sôcôla. Một lần vào một buổi
sáng nắng tuyệt vời, đi dạo quanh những khối băng, Mishka gặp người bạn Chris
của mình và họ bắt đầu chơi game.
Luật chơi rất đơn giản có n vòng đấu. Trong mỗi vòng, mỗi người chơi ném một

5
viên xí ngầu hình khối với các số khác nhau từ 1 đến 6 được viết trên mặt của nó.
Người chơi, có giá trị sau khi ném xúc xắc lớn hơn, sẽ thắng vòng đấu. Trong
trường hợp nếu giá trị xúc xắc của người chơi bằng nhau, không ai trong số họ là
người chiến thắng.
Trung bình, người chơi, người chiến thắng hầu hết các vòng, là người chiến thắng
trong trò chơi. Trong trường hợp nếu hai người chơi giành được số vòng giống
nhau, kết quả của trò chơi là hòa.
Mishka vẫn còn rất nhỏ và không thể đếm được thắng và thua, vì vậy cô ấy yêu cầu
bạn xem trận đấu của họ và xác định kết quả của nó. Xin hãy giúp cô ấy!
Input
Dòng đầu tiên chứa số nguyên n n (1 ≤ n <=100) - số vòng chơi.
Các dòng n tiếp theo chứa mô tả vòng thứ i trong số chúng chứa cặp số nguyên mi
và ci (1 ≤ mi, ci ≤ 6) - các giá trị trên mặt xúc xắc sau khi Mishka và Chris 'lần lượt
ném vào vòng thứ i.
Output
Nếu Mishka là người chiến thắng trong trò chơi, hãy in "Mishka" (không có dấu
ngoặc kép) trong dòng duy nhất.
Nếu Chris là người chiến thắng trong trò chơi, hãy in "Chris" (không có dấu ngoặc
kép) trong dòng duy nhất.
Nếu kết quả của trò chơi là hòa, hãy in "Friendship is magic! ^^" (không có dấu
ngoặc kép) trong dòng duy nhất.
Ví dụ
Input
3
35
21
42
Output
Mishka
Submit tại : https://codeforces.com/problemset/problem/703/A
6
Bài 21.

Trên hành tinh Sao Hỏa một năm kéo dài đúng n ngày (không có năm nhuận trên
Sao Hỏa). Nhưng người sao Hỏa có cùng tuần với người trái đất - 5 ngày làm việc
và sau đó nghỉ 2 ngày. Nhiệm vụ của bạn là xác định mức tối thiểu có thể và số
ngày nghỉ tối đa có thể mỗi năm trên Sao Hỏa.
Input
Dòng đầu tiên của đầu vào chứa số nguyên dương n (1 <= n<= 1 000 000) - số ngày
trong một năm trên Sao Hỏa.
Output
In hai số nguyên -số ngày nghỉ tối thiểu có thể và số ngày nghỉ tối đa có thể mỗi
năm trên Sao Hỏa.
Ví dụ
Input
14
Ouput
44
Submit tại: https://codeforces.com/problemset/problem/670/A

Bài 22. Two Knights.

Đếm số cách đặt 2 con mã trên bàn cờ vua cỡ k × k với k = 1, 2, 3, .. n sao cho chúng
không ăn nhau, 2 con mã này được coi là giống nhau.

Input

Số nguyên dương n duy nhất ( 1 ≤n ≤10000).

Output

Gồm n dòng, mỗi dòng là đáp án của bài toán.

Ví dụ

Input Output

7
7 0
6
28
96
252
550
1056

Giải thích : với bàn cờ cỡ 1 x 1, không có cách nào. Với bàn cờ cỡ 2x2 có 6 cách đặt 2
con mã sao cho chúng không ăn nhau. Tương tự với các cỡ từ 3 tới 7.

Bài 23. Chia táo 1

Có n quả táo và m cái hộp, tìm số cách chia n quả táo này vào m hộp sao cho hộp nào
cũng có ít nhất 1 quả táo.

Input

2 số nguyên dương n , m ( 1 ≤ m ≤ n ≤ 20).

Output

Kết quả của bài toán

Ví dụ

Input Output
63 10

Bài 24. Chia táo 2.

Có n đứa trẻ và m quả táo, đếm số cách chia táo cho n đứa trẻ, không nhất thiết đứa trẻ
nào cũng phải có táo. Ví dụ, có 3 đứa trẻ và 2 quả táo, có những cách chia như sau (0, 0,
2), (0, 2, 0), (2, 0, 0), (1, 1, 0), (0, 1, 1), (1, 0 ,1).

8
Input

2 số nguyên dương n và m ( 1 ≤ m ≤ n ≤ 20).

Output

Đáp án của bài toán

Ví dụ

Input Output
32 6
10 3 220

Bài 25. Trailing Zero

Đếm chữ số 0 tận cùng của n giai thừa

Input

Số nguyên dương n ( 1 ≤ n ≤ 109).

Output

Đáp án của bài toán

Ví dụ

Input Output
200000 49998
812312939 203078228
519491358 129872833

9
ÔN TẬP
Bài 1. Số thuận nghịch. .......................................................................................... 3
Bài 2. Số chính phương.......................................................................................... 3
Bài 3. Số chính phương trong đoạn. ...................................................................... 4
Bài 4. Đếm số lượng chính phương trong đoạn. .................................................... 5
Bài 5. Tính tổng ước của 1 số nguyên dương n. .................................................... 5
Bài 6. Đếm số lượng ước của 1 số nguyên dương n. ............................................. 6
Bài 7. Số có ước lẻ. ................................................................................................ 6
Bài 8. Số hoàn hảo. ................................................................................................ 7
Bài 9. Tổng chữ số. ................................................................................................ 7
Bài 10. Số tăng giảm. ............................................................................................. 8
Bài 11.Fibonacci .................................................................................................... 8
Bài 12. Kiểm tra số fibonacci. ............................................................................... 9
Bài 13. Số đẹp ........................................................................................................ 9
Bài 14. Thuận nghịch và có 3 ước số nguyên tố.................................................. 10
Bài 15. Đếm chữ số chẵn, lẻ. ............................................................................... 11
Bài 16. Số Strong. ................................................................................................ 11
Bài 17. Số Lộc phát. ............................................................................................. 11
Bài 18. Thuận nghịch và lộc phát. ....................................................................... 11
Bài 19. Tính giai thừa. ......................................................................................... 12
Bài 20. Số armstrong............................................................................................ 12
Bài 21. Thuận nghịch và không chứa số 9. .......................................................... 12
Bài 22.Chữ số cuối cùng lớn nhất ........................................................................ 13
Bài 23. Nguyên tố cùng nhau............................................................................... 13
Bài 24. Phi hàm Euler. ......................................................................................... 13
Bài 25. Thừa số nguyên tố thứ k .......................................................................... 14
Bài 26. Chữ số nguyên tố ..................................................................................... 15
Bài 27. Chữ số nguyên tố 2 .................................................................................. 15
Bài 28. Số nguyên dương nhỏ nhất. ..................................................................... 16

1
Bài 29. Tam giác Pascal. ...................................................................................... 16
Bài 30. Ước chung lớn nhất, bội chung nhỏ nhất. ............................................... 16
Bài 31. Phi hàm Euler 2. ...................................................................................... 17
Bài 32. Lũy thừa nhị phân.................................................................................... 18
Bài 33. Đếm ước của n! ....................................................................................... 18

2
---------------------------------------------------
28Tech - Become A Better Developer
Website : https://28tech.com.vn
Youtube : https://youtube.com/28tech_
Facebook page : https://www.facebook.com/28TechAndEdu
Hotline : 0965303260
---------------------------------------------------
BÀI TẬP BUỔI 12 (ÔN TẬP)
Bài 1. Số thuận nghịch.
Kiểm tra số thuận nghịch.

Input

Dòng đầu tiên là số lượng test case T(1≤n≤100).

T dòng tiếp theo mỗi dòng là một số nguyên dương n (1≤n≤1018)

Output

Mỗi test case in trên 1 dòng, in YES nếu n là số thuận nghịch, NO trong trường hợp
ngược lại.

Ví dụ

Input Output
2
10019 NO
9999999999999999 YES

Bài 2. Số chính phương.


Kiểm tra số chính phương.

Input
3
Dòng đầu tiên là số lượng test case T(1≤n≤100).

T dòng tiếp theo mỗi dòng là một số nguyên dương n (1≤n≤1018)

Output

Mỗi test case in trên 1 dòng, in YES nếu n là số chính phương, NO trong trường hợp
ngược lại.

Ví dụ.

Input Output
2
24 NO
10000000000000000 YES

Bài 3. Số chính phương trong đoạn.


In ra các số chính phương trong đoạn từ a tới b.

Input

Dòng đầu tiên là số lượng test case T(1≤n≤100).

T dòng tiếp theo mỗi dòng là 2 số nguyên dương a, b (1≤a≤b≤106)

Output

Mỗi test case in ra trên 1 dòng.

Ví dụ

Input Output
2
1 50 1 4 9 16 25 36 49
10 20 16

4
Bài 4. Đếm số lượng chính phương trong đoạn.
Đếm số lượng các số chính phương trong đoạn từ a tới b.

Input

Dòng đầu tiên là số lượng test case T(1≤n≤100).

T dòng tiếp theo mỗi dòng là 2 số nguyên dương a, b (1≤a≤b≤106)

Output

Mỗi test case in ra trên 1 dòng.

Ví dụ

Input Output
2
1 50 7
10 20 1

Bài 5. Tính tổng ước của 1 số nguyên dương n.


Input

Dòng đầu tiên là số lượng test case T(1≤n≤100).

T dòng tiếp theo mỗi dòng là 1 số nguyên dương n (1≤n≤109)

Output

Mỗi test case in ra trên 1 dòng.

Ví dụ

Input Output
2
10 18
28 56

5
Bài 6. Đếm số lượng ước của 1 số nguyên dương n.
Input

Dòng đầu tiên là số lượng test case T(1≤n≤100).

T dòng tiếp theo mỗi dòng là 1 số nguyên dương n (1≤n≤109)

Output

Mỗi test case in ra trên 1 dòng.

Ví dụ

Input Output
2
10 4
28 6

Bài 7. Số có ước lẻ.


Kiểm tra xem một số có số lượng ước số của nó là số lẻ.

Input

Dòng đầu tiên là số lượng test case T(1≤n≤100).

T dòng tiếp theo mỗi dòng là 1 số nguyên dương n (1≤n≤1018)

Output

Mỗi test case in ra trên 1 dòng. YES nếu n có số lượng ước lẻ, ngược lại in NO.

Ví dụ

Input Output
1
10000000000000000 YES

6
Bài 8. Số hoàn hảo.
Số hoàn hảo là số có tổng các ước thực sự (Không tính chính nó) bằng chính số đó.

Cho một số nguyên dương n, kiểm tra xem n có phải là số hoàn hảo hay không.

Input

Dòng đầu tiên là số lượng test case T(1≤n≤100).

T dòng tiếp theo mỗi dòng là 1 số nguyên dương n (1≤n≤1018)

Output

Mỗi test case in ra trên 1 dòng. YES nếu n là số hoàn hảo, ngược lại in NO.

Ví dụ

Input Output
2
28 YES
2305843008139952128 YES

Bài 9. Tổng chữ số.


Tính tổng chữ số của 1 số nguyên dương n.

Input

Dòng đầu tiên là số lượng test case T(1≤n≤100).

T dòng tiếp theo mỗi dòng là 1 số nguyên dương n (1≤n≤1018)

Output

Mỗi test case in ra trên 1 dòng tổng các chữ số của n.

Ví dụ

7
Input Output
2
10000000000000000 1
124 7

Bài 10. Số tăng giảm.


Một số được gọi là số tăng giảm nếu số đó có các chữ số thỏa mãn hoặc tăng
dần, hoặc giảm dần từ trái qua phải.
Hãy đếm các số nguyên tố là số tăng giảm với n là số chữ số cho trước.

Input

Số nguyên dương duy nhất n (1≤n≤6).

Output

In ra số lượng số tăng giảm là số nguyên tố có n chữ số.

Ví dụ

Input Output
2 20

Bài 11.Fibonacci
Dãy số Fibonacci được định nghĩa như sau: F0 = 0, F1 = 1; Fi = Fi-1 + Fi-2.
Cho số nguyên dương n, với 2≤n≤92. Hãy viết chương trình in ra n số Fibonacci
đầu tiên.
Input

Số nguyên dương n (2≤n≤92)

Output

n số fibonacci đầu tiên, mỗi số được in cách nhau một dấu cách.

8
Ví dụ

Input Output
5 0 1123

Bài 12. Kiểm tra số fibonacci.


Nhập vào một số và kiểm tra xem số vừa nhập có phải là số trong dãy fibonacci hay
không?

Input

Dòng đầu tiên là số lượng test case T(1≤n≤100).

T dòng tiếp theo mỗi dòng là 1 số nguyên dương n (1≤n≤1018)

Output

Mỗi test case in trên 1 dòng, in YES nếu n là số fibonacci, ngược lại in NO.

Ví dụ

Input Output
3
2 YES
4 NO
420196140727489673 YES

Bài 13. Số đẹp


Một số được coi là đẹp nếu nó là số nguyên tố và tổng chữ số là một số trong
dãy Fibonaci. Viết chương trình liệt kê trong một đoạn giữa hai số nguyên cho
trước có bao nhiêu số đẹp như vậy

Input

9
Dòng duy nhất là 2 số nguyên dương a, b(1≤a≤b≤109).

Output

In ra các số đẹp trong đoạn từ a tới b. Trong trường hợp không tồn tại số đẹp trong đoạn
từ a tới b thì in ra -1.

Ví dụ

Input Output
2 50 2 3 5 11 17 23 41

24 30 -1

Bài 14. Thuận nghịch và có 3 ước số nguyên tố.


Một số được coi là đẹp nếu nó là số thuận nghịch và có ít nhất 3 ước số
nguyên tố khác nhau. Viết chương trình in ra các số đẹp như vậy trong một đoạn
giữa hai số nguyên cho trước

Input

Dòng duy nhất là 2 số nguyên dương a, b(1≤a≤b≤109).

Output

In ra các số đẹp trong đoạn từ a tới b. Trong trường hợp không tồn tại số đẹp trong đoạn
từ a tới b thì in ra -1.

Input Output
1 1000 66 222 252 282 414 434 444 474 494 525
555 585 595 606 616 636 646 666 696
777 828 858 868 888 969

10
Bài 15. Đếm chữ số chẵn, lẻ.
Nhập một số nguyên dương N không quá 9 chữ số. Hãy đếm xem N có bao
nhiêu chữ số lẻ và bao nhiêu chữ số chẵn. Nếu không tồn tại số lẻ hoặc số chẵn thì
in ra kết quả là 0 cho loại số tương ứng

Input Output

12345678 44

Bài 16. Số Strong.


Viết chương trình cho phép nhập vào hai số nguyên dương và tìm tất cả các
số Strong (là số có tổng giai thừa các chữ số bằng chính nó) nằm trong khoảng đó
(nếu không tồn tại số nào thì in ra 0)

Input Output
1 1000 1 2 145

Bài 17. Số Lộc phát.


Một số được gọi là “lộc phát” nếu chỉ có các chữ số 0,6,8. Nhập vào một số
nguyên dương không quá 9 chữ số, hãy kiểm tra xem đó có phải số lộc phát hay
không. Nếu đúng in ra 1, sai in ra 0.

Input Output
6808 1
16808 0

Bài 18. Thuận nghịch và lộc phát.


Một số được coi là số đẹp nếu nó là số thuận nghịch, có chứa ít nhất một
chữ số 6, và tổng các chữ số của nó có chữ số cuối cùng là 8. Viết chương trình liệt

11
kê trong một đoạn giữa hai số nguyên cho trước có bao nhiêu
số đẹp như vậy.

Input Output
1 500 161

Bài 19. Tính giai thừa.


Viết chương trình C cho phép nhập một số tự nhiên n và tính giai thừa của
n.

Input Output
10 3628800

Bài 20. Số armstrong


Số armstrong là số A có n chữ số và thỏa mãn tổng của lũy thừa bậc n của
từng chữ số trong A bằng chính nó.
Ví dụ: 371 = 3^3 + 7^3 + 1^3
Viết chương trình C kiểm tra một số xem có phải là số armstrong hay không. Nếu
đúng in ra 1, sai in ra 0.

Input Output
371 1
24 0

Bài 21. Thuận nghịch và không chứa số 9.


Viết chương trình C cho phép nhập vào số N, thực hiện liệt kê các số thuận nghịch
lớn hơn 1 và nhỏ hơn N thỏa mãn không chứa chữ số 9. Có bao nhiêu số như vậy

Input Output

12
100 2 3 4 5 6 7 8 11 22 33 44 55 66 77 88
15

Bài 22.Chữ số cuối cùng lớn nhất


Viết chương trình C cho phép nhập vào n và liệt kê các số nguyên tố thỏa
mãn nhỏ hơn n và có chữ số cuối cùng lớn nhất. Có bao nhiêu số như vậy

Input Output
200 2 3 5 7 11 13 17 19 23 29 37 47 59 67 79
89 101 103 107 109 113 127 137 139 149
157 167 179 199
29

Bài 23. Nguyên tố cùng nhau.


Nhập 2 số nguyên dương a,b. Xác định xem 2 số vừa nhập có phải là 2 số nguyên
tố cùng nhau.
Input
2 số nguyên dương a,b (1 ≤a,b≤1012).
Output
In YES nếu 2 số a,b nguyên tố cùng nhau, ngược lại in NO.
Ví dụ

Input Output
20 17 YES
14 15 YES
8 128 NO

Bài 24. Phi hàm Euler.


Đếm số lượng các số nguyên tố cùng nhau với n không vượt quá n.
Input
13
Số nguyên duy nhất n (1 ≤n≤1016).
Output
Kết quả của bài toán.
Ví dụ

Đếm số lượng các số nguyên tố cùng nhau với n không vượt quá n.
Input
Số nguyên duy nhất n (1 ≤n≤1016).
Output
Kết quả của bài toán.
Ví dụ

Input Output
9 6
10000000000000000 4000000000000000
Bài 25. Thừa số nguyên tố thứ k
Đưa ra số nguyên tố thứ k trong phân tích thừa số nguyên tố của một số nguyên
dương n.
Ví dụ n=28, k=3 ta có kết quả là 7 vì 28=2x2x7.
Input
2 số n,k (1 ≤n,k≤109).
Output
In ra số nguyên tố thứ k trong phân tích thừa số nguyên tố của n, trường hợp không
tồn tại in -1.

Ví dụ

Input Output
28 3 7
85 -1
60 3 3

14
Bài 26. Chữ số nguyên tố
Liệt kê số lần xuất hiện của chữ số nguyên tố của 1 số theo thứ tự từ nhỏ đến lớn.
Input
Số nguyên dương n (1 ≤n≤1018).
Output
Chữ số nguyên tố xuất hiện trong số ban đầu cùng với số lần xuất hiện của nó.
Ví dụ

Input Output
722334123232277 26
34
73

Bài 27. Chữ số nguyên tố 2


Liệt kê số lần xuất hiện của chữ số nguyên tố của 1 số theo thứ tự xuất hiện các chữ
số.
Input
Số nguyên dương n (1 ≤n≤1018).
Output
Chữ số nguyên tố xuất hiện trong số ban đầu cùng với số lần xuất hiện của nó theo
thứ tự xuất hiện.
Ví dụ

Input Output
722334123232277 73
26
34

15
Bài 28. Số nguyên dương nhỏ nhất.
Cho 4 số nguyên dương x, y, z, n.
Tìm số nguyên dương nhỏ nhất có n chữ số chia hết cho cả x, y, và z.
Input
4 số nguyên dương x, y, z, n. (1 ≤x,y,z≤104). n≤16.
Output
Kết quả của bài toán, trường hợp không tìm được số thỏa mãn in -1.

Ví dụ

Input Output
2354 1020
3572 -1

Bài 29. Tam giác Pascal.


In ra tam giác pascal với chiều cao là n.
Input
Chiều cao của tam giác n. (1 ≤n≤10).
Output
Tam giác pascal tương ứng.
Ví dụ

Input Output
5 1
11
121
1331
14641

Bài 30. Ước chung lớn nhất, bội chung nhỏ nhất.
Tìm ước chung lớn nhất của 2 số nguyên không âm a và b.
16
Input

2 số nguyên không âm a và b ( 0≤a,b≤109).

Output

In ra ước chung lớn nhất của 2 số và bội chung nhỏ nhất của 2 số.

Ví dụ

Input Output
100 20 20 100
17 29 1 493

Bài 31. Phi hàm Euler 2.


Cho số nguyên dương n, nhiệm vụ của bạn là in ra 𝜑(i) với 1≤i≤n. Trong đó 𝜑(i) là phi
hàm Euler của i.

Input

Dòng đầu tiên là số lượng bộ test T. (1≤T≤100).

Mỗi test case là một số nguyên dương n (1≤n≤106).

Output

In kết quả mỗi test case trên 1 dòng.

Ví dụ

Input Output
1
10 1122426464

Link submit :

17
https://www.spoj.com/problems/ETF/

Bài 32. Lũy thừa nhị phân.


Tính a^b với a,b nguyên không âm.

Input

Dòng đầu tiên là số lượng bộ test T. (1≤T≤100).

Mỗi test case là một số nguyên dương a,b.

Output

In kết quả mỗi test case trên 1 dòng.

Ví dụ

Input Output
2
2 10 1024
33 27

Bài 33. Đếm ước của n!


Đếm số lượng ước của n!.

Input

Dòng đầu tiên là số lượng test case T (1≤T≤100).

Mỗi test case là một số nguyên không âm n (1≤T≤100).

Output

In ra kết quả mỗi test case trên 1 dòng.

Ví dụ

18
Input Output
2
10 270
97 26494182162432000

19
Buổi 10.

Phần 1.

1.Tính tổng sau sử dụng hàm đệ qui.


S=1+2+3+….+n
Ví dụ
Input
3
Ouput
6
2.Tính tổng sau sử dụng hàm đệ qui.
S=1^2+2^2+3^2+…..+n^2
Ví dụ
Input
2
Output
5
3.Tính số fibonacii thứ n sử dụng đệ qui.
F1=1, F2=1, Fn=Fn-1+Fn-2
Ví dụ
Input
6
Output
8
4.Đếm số lượng chữ số của số nguyên dương n sử dụng đệ qui.
Ví dụ
Input
1234
Output
4
5.Tính n! sử dụng đệ qui.
Ví dụ
Input
5
Output
120
6.In số đảo ngược của một số nguyên dương sử dụng đệ qui.
Ví dụ
Input
12345
Output
54321
7.Tìm ước chung lớn nhất của 2 số sử dụng đệ qui.
Ví dụ
Input
10 20
Output
10
8.Tìm chữ số đầu tiên của n.
Ví dụ
Input
12345
Output
1
9.Tính tổng sau sử dụng hàm đệ qui.
S=-1+2-3+4+…..+(-1)^n.n
Ví dụ
Input
3
Output
-2
10.Tính tổng sau sử dụng đệ qui.
S=1+1/2+1/3+….+1/n
Ví dụ
Input
2
Output
1.50
11.Tính tổ hợp chập k của n sử dụng đệ qui. Dữ liệu đầu vào 1 dòng gồm 2 số n và
k. Dữ liệu đầu ra là kết quả của bài toán.
Ví dụ
Input
32
Output
3

Phần 2.
Bài 1.Kiểm tra xem số nguyên dương n có chứa toàn chữ số lẻ, nếu đúng in ra 1,
ngược lại in ra 0.
Ví dụ
Input
1357
Ouput
1
Bài 2.Kiểm tra xem số nguyên dương n có chứa toàn chữ số chẵn, nếu đúng in ra 1,
ngược lại in ra 0.
Ví dụ
Input
24
Output
1
Bài 3. Viết hàm tính tổng các chữ số chẵn của số nguyên không âm n.
Ví dụ
Input
13576
Output
6
Bài 4.Viết hàm tính tổng các chữ số lẻ của số nguyên không âm n.
Ví dụ
Input
1235
Output
9
Bài 5. Viết hàm tính tích các chữ số của số nguyên không âm n.
Ví dụ
Input
1234
Output
24
Bài 6. Viết hàm đếm số lượng chữ số chẵn trong mảng.
Ví dụ
Input
6
123456
Output
3
Bài 7. Viết hàm đếm số lượng chữ số lẻ trong mảng.
Ví dụ
Input
10
1113326896
Output
6
Bài 8. Viết hàm tính tổng các số chẵn trong mảng.
Ví dụ
Input
6
12355
Output
2
Bài 9. Viết hàm tính tổng các chữ số lẻ trong mảng.
Ví dụ
Input
5
77812
Output
15
Bài 10. Viết hàm xuất ra mảng một chiều.
Ví dụ
Input
6
123456
Output
123456
Bài 11. Viết hàm xuất ra mảng một chiều theo thứ tự đảo ngược.
Ví dụ
Input
6
123456
Output
654321
Bài 12. Đếm số lượng chữ số phân biệt trong mảng 1 chiều.
Ví dụ
Input
8
11254331
Output
5
Bài 13. Kiểm tra xem mảng có chứa toàn số âm, nếu đúng in ra 1, ngược lại in ra 0.
Ví dụ
Input
10
1 2 -5 -5 -92 -95 -88 23 -11 -74
Output
0
Bài 14. Tìm số lớn nhất trong mảng một chiều.
Ví dụ
Input
7
9 1 2 3 11 0 -9
Output
11
Bài 15. Kiểm tra mảng đối xứng, nếu mảng đối xứng in ra 1, ngược lại in ra 0.
Ví dụ
Input
10
1234554321
Output
1
Input
6
123322
Output
0
Buổi 11.
Bài 1. Nhập vào mảng số nguyên có n phần tử, tìm số lớn nhất và số lớn thứ 2
trong mảng vì in ra kết quả trên 2 dòng.
Input:
Dòng đầu là n (2<=n<=100) - số lượng phần tử của mảng
Dòng thứ 2 bao gồm n phần tử của mảng
Output:
Dòng đầu tiên : Giá trị của số lớn nhất.
Dòng thứ hai: Giá trị của số lớn thứ 2.
Ví dụ
Input
10
1234567899
Ouput
9
Bài 2. Nhập vào n số nguyên không âm, đếm số lượng số là số nguyên tố trong
dãy số vừa nhập.
Input:
Dòng đầu tiên là n (1<=n<=10000) - số lượng số nguyên trong dãy.
Dòng thứ 2 là n số nguyên trong dãy
Output:
Số lượng số nguyên tố trong dãy
Ví dụ
Input
10
1 2 3 4 5 6 7 8 9 11
Output
5
Bài 3. Nhập vào n số nguyên không âm, đếm và liệt kê các số thuận nghịch trong
dãy số vừa nhập, liệt kê theo thứ tự xuất hiện trong mảng.
Input:
Dòng đầu tiên là n (1<=n<=100000) - số lượng số trong dãy
Dòng thứ hai là n số trong dãy
Output:
Dòng đầu tiên là số lượng số thuận nghịch trong dãy
Dòng thứ 2 liệt kê các số thuận nghịch trong dãy
Ví dụ
Input
10
22 556 787 121 1 2 3 4 5 9899
Output
8
22 787 121 1 2 3 4 5
Bài 4. Nhập một mảng gồm n số nguyên không âm, đếm số lượng chữ số chẵn, số
lẻ trong mảng.
Input:
Dòng đầu tiên là n (1<=n<=100000) - số lượng số trong dãy
Dòng thứ hai là n số trong dãy
Output:
Dòng đầu là số lượng chữ số chẵn trong mảng.
Dòng thứ hai là số lượng chữ số lẻ trong mảng.
Ví dụ
Input
6
1 98 13 24 76 8723
Ouput
3
Bài 5. Nhập vào mảng gồm n số nguyên, tính và in ra giá trị trung bình của các
phần tử trong mảng.
Input:
Dòng đầu tiên là n (1<=n<=100000) - số lượng số trong dãy
Dòng thứ hai là n số trong dãy
Ouput
Giá trị trung bình của các số trong mảng
Ví dụ
Input
4
1234
Output
2.50
Bài 6. Nhập vào mảng số nguyên không âm gồm n phần tử, đếm số lượng và liệt kê
các số chính phương trong mảng.
Input:
Dòng đầu tiên là n (1<=n<=100) - số lượng số trong dãy
Dòng thứ hai là n số trong dãy
Output:
Dòng đầu tiên là số lượng số chính phương trong mảng.
Dòng thứ 2 liệt ke các số chính phương trong mảng.
Ví dụ
Input
10
1 2 3 4 5 6 7 8 9 1000000000000
Output
4
2 4 9 1000000000000
Bài 7. Nhập vào mảng n gồm số nguyên và số nguyên x, đếm số lần xuất hiện của x
trong mảng.
Input:
Dòng đầu tiên là n (1<=n<=100000) - số lượng số trong dãy
Dòng thứ hai là n số trong dãy
Dòng thứ 3 là số nguyên x
Ouput:
Một dòng duy nhất in số lần xuất hiện của x trong mảng.
Ví dụ
Input
10
9 8 66 775 13 14 14 1 94 114
15
Ouput
0
Bài 8. Nhập vào một mảng gồm n số nguyên không âm và một số nguyên không
âm x, đếm số lượng số nguyên tố cùng nhau với x trong mảng và liệt kê các số đó.
Input:
Dòng đầu tiên là n (1<=n<=100000) - số lượng số trong dãy
Dòng thứ hai là n số trong dãy
Dòng thứ 3 là số nguyên x
Output
Dòng đầu tiên là số lượng số nguyên tố cùng nhau với x trong mảng.
Dòng thứ hai liệt kê các số nguyên tố cùng nhau với x.
Ví dụ
Input
10
46 2 3 4 5 6 7 8 9 10
23
Ouput
9
2 3 4 5 6 7 8 9 10
Bài 9.Nhập vào mảng gồm n số nguyên, tìm số lớn nhất và nhỏ nhất trong mảng và
vị trí của chúng trong mảng, trường hợp có nhiều số lớn nhất hoặc nhỏ nhất thì in
ra vị trí xuất hiện cuối cùng.
Input:
Dòng đầu tiên là n (1<=n<=100000) - số lượng số trong dãy
Dòng thứ hai là n số trong dãy
Output
Dòng đầu tiên là số lớn nhất và vị trí của nó.
Dòng thứ hai là số nhỏ nhất và vị trí của nó.
Ví dụ
Input
8-
1 2 3 4 5 5 -1 5
Ouput
58
-1 7
Bài 10. Tìm và in ra vị trí của số nhỏ nhất và nhỏ thứ 2 trong mảng các số nguyên
khác nhau.(Các phần tử trong mảng khác nhau đôi một).
Input:
Dòng đầu tiên là n (1<=n<=100000) - số lượng số trong dãy
Dòng thứ hai là n số trong dãy
Output
Dòng đầu tiên là vị trí của số nhỏ nhất
Dòng thứ hai là vị trí của số nhỏ thứ hai.
Ví dụ
Input
10
1 2 3 9 8 7 6 5 4 10
Output
12B
ài 11. Tất cả các thành phố của Lineland đều nằm trên trục tọa độ Ox. Do đó, mỗi
thành
phố được liên kết với vị trí xi - tọa độ trên trục Ox. Không có hai thành phố được
đặt tại một điểm.
Cư dân Lineland thích gửi thư cho nhau. Một người chỉ có thể gửi thư nếu người
nhận sống ở một thành phố khác.
Chi phí gửi thư chính xác bằng khoảng cách giữa thành phố của người gửi và thành
phố của người nhận.
Đối với mỗi thành phố, hãy tính hai giá trị mini và maxi, trong đó mini là chi phí tối
thiểu để gửi thư từ thành phố thứ i đến một thành phố khác và maxi là chi phí tối đa
để gửi thư từ thành phố thứ i đến một số thành phố khác
Input
Dòng đầu tiên của đầu vào chứa số nguyên n (2<= n ≤ 10^5) - số lượng thành phố
trong Lineland. Dòng thứ hai chứa chuỗi n số nguyên khác nhau x1, x2, ..., xn (-
10^9<= xi <=10^9), trong đó xi là tọa độ x của thành phố thứ i. Tất cả các xi là
khác biệt và theo thứ tự tăng dần.
Output
In n dòng, dòng thứ i phải chứa hai số nguyên mini, maxi, cách nhau bởi một
khoảng trắng, trong đó mini là chi phí tối thiểu để gửi thư từ thành phố thứ i và
maxi là chi phí tối đa để gửi thư từ thành phố thứ i.
Ví dụ
Input
4-
5 -2 2 7
Ouput
3 12
39
47
5 12
Submit tại: https://codeforces.com/problemset/problem/567/A
Bài 12. 349A.
Bộ phim "Die Hard" mới vừa được phát hành! Có n người tại phòng vé rạp chiếu
phim đứng thành một hàng lớn. Mỗi người trong số họ có một hóa đơn 100, 50
hoặc 25 rúp. Một vé "Die Hard" có giá 25 rúp. Nhân viên đặt phòng có thể bán vé
cho mỗi người và trả tiền thừa nếu ban đầu anh ta không có tiền và bán vé theo
đúng thứ tự mọi người trong hàng không?
Input
Dòng đầu tiên chứa số nguyên n (1 <= n<= 10^5) - số người trong hàng. Dòng tiếp
theo chứa n số nguyên, mỗi số bằng 25, 50 hoặc 100 - giá trị của các hóa đơn mà
mọi người có.
Output
In "YES" (không có dấu ngoặc kép) nếu nhân viên đặt phòng có thể bán vé cho mỗi
người và có thể trả tiền thừa. Nếu không thì in "NO".
Ví dụ
Input
4
25 25 50 50
Output
YES
Submit tại: https://codeforces.com/problemset/problem/349/A
Bài 13. 231A.
Một ngày nọ, ba người bạn thân nhất Petya, Vasya và Tonya quyết định thành lập
một nhóm và tham gia các cuộc thi lập trình. Những người tham gia thường được
cung cấp một số vấn đề trong các cuộc thi lập trình. Rất lâu trước khi bắt đầu,
những người bạn đã quyết định rằng họ sẽ giải một vấn đề nếu ít nhất hai người
trong số họ biết cách giải. Nếu không, bạn bè sẽ không viết lời giải cho vấn đề đó.
Cuộc thi này cung cấp n vấn đề cho những người tham gia. Đối với mỗi vấn đề
chúng ta biết, người bạn nào chắc chắn lời giải. Giúp bạn bè tìm ra số vấn đề mà họ
sẽ viết ra giải pháp.
Input
Dòng đầu vào đầu tiên chứa một số nguyên n (1 <=n <=1000) - số lượng vấn đề
trong cuộc thi. Sau đó, n dòng chứa ba số nguyên mỗi số nguyên, mỗi số nguyên là
0 hoặc 1. Nếu số đầu tiên trong dòng bằng 1, thì Petya chắc chắn về lời giải của vấn
đề, nếu 0 thì không chắc chắn về lời giải. Số thứ hai cho thấy quan điểm của Vasya
về giải pháp, số thứ ba cho thấy quan điểm của Tonya. Các số trên các dòng được
phân cách bằng dấu cách.
Output
In một số nguyên duy nhất - số lượng vấn đề mà 3 bạn trên sẽ thực hiện trong cuộc
thi.
Ví dụ
Input
31
10
111
100
Output
2
Bài này hiểu đơn giản như sau, có n bài tập, 3 người tham gia trong cùng 1 nhóm sẽ
được coi là giải được bài đó nếu ít nhất 2 trong 3 người biết lời giải. Mỗi dòng chứa
3 số, chỉ trạng thái của 3 bạn, 1 tức là người đó biết lời giải, 0 có nghĩa người đó
không biết lời giải. trong dòng 1 1 0 của ví dụ, có 2 người biết lời giải của bài thứ 1
nên bài đó được coi là giải được, bài tiếp theo là 1 1 1 thì 3 người đều biết lời giải.
Submit tại: https://codeforces.com/problemset/problem/231 /A
Bài 14. Nhập vào mảng a[] gồm n phần tử là số nguyên không âm, tìm phần tử có
lần xuất hiện trong mảng nhiều nhất, in ra số tìm được và số lần xuất hiện trên cùng
một dòng.
Input:
Dòng đầu tiên là n (1<=n<=100000) - số lượng số trong dãy
Dòng thứ hai là n số trong dãy
Output
Số có lần xuất hiện nhiều nhất và số lần xuất hiện
Ví dụ
Input
10
1229876523
Output
23
Bài 15. Nhập vào n số nguyên dương không âm, tìm và in ra ước chung lớn nhất
của tất cả các phần tử trong mảng.
Input:
Dòng đầu tiên là n (1<=n<=100000) - số lượng số trong dãy
Dòng thứ hai là n số trong dãy
Output
Ước chung lớn nhất của tất cả các phần tử trong mảng.
Ví dụ
Input
5
22248
Output
Buổi 12.

Bài 1. Cho một mảng gồm n (3<=n<=100000) số nguyên đôi một khác nhau, tìm

in ra 3 số lớn nhất trong mảng.
Ví dụ
Input
10
99 13 2 4 0 12 24 58 56 14
Output
99 58 56
Bài 2. Cho một mảng gồm n (3<=n<=100000) số nguyên đôi một khác nhau, liệt kê
các phần tử trong mảng có ít nhất 2 phần tử khác lớn hơn nó.
Ví dụ
Input
6
154327
Output
1432
Bài 3. Cho một mảng gồm n (3<=n<=100000) số nguyên đôi một khác nhau, tìm

in ra 3 số nhỏ nhất trong mảng.
Ví dụ
Input
7
9 11 78 75 14 6 1
Ouput
961
Bài 4. Cho một mảng gồm n (2<=n<=100000) số nguyên dương tìm số lớn nhất và
lớn thứ hai trong mảng, trường hợp không có số lớn thứ 2 trong thì in -1.
Ví dụ
Input
7
1234566
Output
65
Input
7
99 99 99 99 99 99 99
Output
99 -1
Bài 5. Một số được định nghĩa là số đẹp nếu nó chứa cả chữ số 1 và chữ số 9. Cho
một mảng số nguyên gồm n phần tử (1<=n<=100), đếm số lượng chữ số đẹp trong
mảng.
Ví dụ
Input
5
79 19 91 99 129
Output
3
Bài 6. Tìm vị trí số chẵn cuối cùng trong mảng một chiều, nếu mảng không tồn tại
số chẵn thì in ra -1.
Ví dụ
Input
6
781223
Output
5
Bài 7. Tìm vị trí của số dương nhỏ nhất trong mảng 1 chiều, nếu mảng không tồn
tại số dương thì in ra -1.
Ví dụ
Input
5-
1 -2 9 3 4
Output
4
Bài 8. Nhập vào mảng một chiều gồm n phần tử, và phần tử x, tìm phần tử trong
mảng cách xa x nhất. Dữ liệu đầu vào dòng đầu tiên là số phần tử trong mảng, dòng
thứ 2 là các phần tử trong mảng, dòng thứ 3 là giá trị của x.
Ví dụ
Input
5
1 2 3 -5 15
3
Output
15
Bài 9. Cho mảng một chiều gồm n số nguyên dương, tìm đoạn [a,b] chứa tất cả
các phần tử xuất hiện trong mảng
Ví dụ
Input
5
1 9 10001 25 77
Output
1 10001
Bài 10. Cho mảng một chiều các số nguyên, liệt kê các phần tử có ít nhất một phần
tử liền kề trái dấu với nó
Ví dụ
Input
7-
1 2 3 -1 5 8 9
Output
-1 2 3 -1 5
Bài 11. Liệt kê các số trong mảng một chiều có chữ số đầu tiên của nó là chữ số lẻ.
Ví dụ
Input
5
17 88 23 14 90
Output
17 23 14 90
Bài 12. Liệt kê các số trong mảng một chiều các số nguyên chứa toàn chữ số lẻ.
Ví dụ
Input
10
1 2 3 4 55 666 7 898 1 4 23
Output
1 3 55 7
Bài 13. Tính tổng các số chính phương trong mảng một chiều các số nguyên không
âm.
Ví dụ
Input
6
1 4 9 20 45 31
Output
14
Bài 14. Kiểm tra xem mảng cho trước có tồn tại 2 số nguyên liên tiếp hay không,
nếu có in ra YES, ngược lại in ra NO.
Ví dụ
Input
5
8 14 99 15 20
Output
YES
Bài 15. Kiểm tra xem mảng cho trước có tăng dần hay không, mảng tăng dần được
định nghĩa là mảng có phần tử đứng sau lớn hơn phần tử đứng trước nó. Nếu mảng
tăng dần in ra YES, trường hợp ngược lại in ra NO.
Ví dụ
Input
9
123456679
Output
NO
Bài 16. Kiểm tra xem mảng cho trước có không tăng hay không, mảng không tăng
được định nghĩa là mảng có phần tử đứng trước lớn hơn hoặc bằng phần tử đứng
sau nó. Nếu mảng không tăng in ra YES, ngược lại in ra NO.
Ví dụ
Input
7
7655331
Output
YES
Bài 17. Đếm số lượng số nguyên tố trong mảng một chiều các số nguyên cho trước.
Ví dụ
Input
10
1 2 3 4 5 6 7 8 9 11
Output
5
Bài 18. Đếm số lượng số nguyên trong mảng có số lượng ước là số lẻ.
Ví dụ
Input
10
1 2 3 4 5 6 7 8 9 25
Output
4
Bài 19. Cho một dãy số nguyên dương có n phần tử (2<=n<=50). Hãy liệt kê số các
phần tử trong dãy không nhỏ hơn các số đứng trước nó (tính cả phần tử đầu tiên).
Dữ liệu vào: Dòng 1 ghi số bộ test. Mỗi bộ test ghi ra 2 dòng: dòng 1 là số phần tử,
dòng thứ 2 ghi dãy số. Kết quả ghi ra số phần tử thỏa mãn.
Ví dụ
Input
17
3568429
Output
5
Bài 20. Cho dãy số A có n phần tử chỉ bao gồm các số nguyên dương (không quá
105). Hãy đếm xem mỗi số xuất hiện
bao nhiêu lần.
Dữ liệu vào: Dòng đầu tiên ghi số bộ test. Với mỗi bộ test: dòng đầu ghi số n
(không quá 100); dòng tiếp theo
ghi n số của dãy.
Kết quả: Với mỗi bộ test ghi ra thứ tự bộ test, sau đó lần lượt là các số trong dãy
theo thứ tự xuất hiện trong
dãy và số lần xuất hiện của nó.
Ví dụ
Input
1
10
1728332132
Output
Test 1:
1 xuat hien 2 lan
7 xuat hien 1 lan
2 xuat hien 3 lan
8 xuat hien 1 lan
3 xuat hien 3 lan
Bài 21. Cho dãy số A có n phần tử chỉ bao gồm các số nguyên dương (không quá
105). Hãy xác định các số nguyên tố
trong dãy và đếm xem mỗi số xuất hiện bao nhiêu lần.
Dữ liệu vào: Dòng đầu tiên ghi số bộ test. Với mỗi bộ test: dòng đầu ghi số n
(không quá 100); dòng tiếp theo
ghi n số của dãy.
Kết quả: Với mỗi bộ test ghi ra thứ tự bộ test, sau đó lần lượt là các số nguyên tố
trong dãy theo thứ tự từ nhỏ đến lớn và số lần xuất hiện của nó.
Ví dụ
Input
2
10
1728332132
5
1 3 5 5 13
Output
Test 1:
2 xuat hien 3 lan
3 xuat hien 3 lan
7 xuat hien 1 lan
Test 2:
3 xuat hien 1 lan
5 xuat hien 2 lan
13 xuat hien 1 lan
Bài 22. Khi chuẩn bị một giải đấu, các điều phối viên của Codeforces cố gắng tốt
nhất để
làm cho vấn đề đầu tiên dễ dàng nhất có thể. Lần này, điều phối viên đã chọn một
số vấn đề và hỏi mọi người về ý kiến của họ. Mỗi người trả lời vấn đề này là dễ hay
khó.
Nếu ít nhất một trong số n người này trả lời rằng vấn đề là khó khăn, điều phối viên
quyết định thay đổi vấn đề. Đối với các phản hồi nhất định, kiểm tra xem vấn đề có
đủ dễ dàng không.
Input
Dòng đầu tiên chứa một số nguyên n (1≤n≤100) - số người được yêu cầu đưa ra ý
kiến của họ.
Dòng thứ hai chứa n số nguyên, mỗi số nguyên là 0 hoặc 1. Nếu số nguyên i là 0,
thì người thứ i nghĩ rằng vấn đề là dễ dàng; nếu là 1, thì người thứ i nghĩ rằng vấn
đề thật khó khăn.
Output
In một từ: "EASY" nếu vấn đề dễ dàng theo tất cả các phản hồi hoặc "HARD" nếu
có ít nhất một người cho rằng vấn đề khó khăn.
Ví dụ
Input
3
001
Output
HARD
Submit tại: https://codeforces.com/problemset/problem/1030/A
Bài 23. Bạn được cung cấp n chip trên một dòng số. Chip thứ i được đặt tại tọa độ
nguyên
xi. Một số chip có thể có tọa độ bằng nhau.
Bạn có thể thực hiện một trong hai loại di chuyển sau bất kỳ số lần (có thể là 0) trên
bất kỳ chip nào:
Di chuyển chip i sang trái 2 đơn vị hoặc 2 đơn vị sang phải miễn phí (nghĩa là thay
thế tọa độ xi hiện tại bằng xi -2 hoặc bằng xi + 2);
Di chuyển chip i sang trái hoặc sang phải 1 đơn vị và trả một xu cho lần di chuyển
này (tức là thay thế tọa độ hiện tại xi bằng xi-1 hoặc bằng xi + 1).
Lưu ý rằng được phép di chuyển chip sang bất kỳ tọa độ nguyên nào, bao gồm âm
và 0.
Nhiệm vụ của bạn là tìm ra tổng số xu tối thiểu cần thiết để di chuyển tất cả n chip
vào cùng một tọa độ (nghĩa là tất cả xi phải bằng nhau sau một số lần di chuyển).
Input
Dòng đầu tiên của đầu vào chứa một số nguyên n (1≤n≤100) - số lượng chip.
Dòng thứ hai của đầu vào chứa n số nguyên x1, x2,…, xn (1≤xi≤10^9), trong
đó xi là tọa độ của chip thứ i.
Output
In một số nguyên - tổng số xu tối thiểu cần thiết để di chuyển tất cả n chip đến cùng
tọa độ.
Ví dụ
Input
3
123
Output
1
Submit tại: https://codeforces.com/problemset/problem/1213/A
Bài 24. ZS the Coder đang mã hóa trên một máy tính điên. Nếu bạn không gõ một
từ trong
một giây liên tiếp, mọi thứ bạn gõ sẽ biến mất!
Nếu bạn gõ một từ ở giây thứ a và sau đó là từ tiếp theo ở giây b, thì nếu b - a ≤ c,
chỉ từ mới được thêm vào các từ khác trên màn hình. Nếu b - a> c, thì mọi thứ trên
màn hình sẽ biến mất và sau đó từ bạn đã gõ sẽ xuất hiện trên màn hình.
Ví dụ: nếu c = 5 và bạn đã gõ các từ ở giây 1, 3, 8, 14, 19, 20 thì ở giây thứ 8 sẽ có
3 từ trên màn hình. Sau đó, mọi thứ biến mất vào giây thứ 13 vì không có gì được
gõ. Ở giây 14 và 19, hai từ khác được gõ và cuối cùng, ở 20 giây thứ hai, một từ
nữa được gõ và tổng cộng 3 từ vẫn còn trên màn hình
Bạn được cung cấp thời gian khi ZS gõ các từ. Xác định có bao nhiêu từ vẫn còn
trên màn hình sau khi anh ta gõ xong mọi thứ.
Input
Dòng đầu tiên chứa hai số nguyên n và c (1 ≤ n ≤ 100 000, 1 <=c <=10^9) - số
lượng từ ZS mà Coder đã nhập và độ trễ của máy tính điên tương ứng.
Dòng tiếp theo chứa n số nguyên t1, t2, ..., tn (1 ≤ t1 <t2 <... <tn ≤ 10^9), trong đó
ti biểu thị số thứ hai khi ZS gõ từ thứ i.
Output
In một số nguyên dương duy nhất, số lượng từ còn lại trên màn hình sau khi tất cả n
từ được gõ.
Ví dụ
Input
65
1 3 8 14 19 20
Output
3

Bài 25.
Nhập vào mảng số nguyên gồm n (1<=n<=1000) phần tử, sắp xếp và in ra các phần
tử trong mảng theo thứ tự tăng dần. Chú ý cài đặt bằng cả 2 thuật toán (selection và
interchange sort).
Input
Dòng đầu tiên là số phần tử của mảng.
Dòng thứ 2 là các phần tử trong mảng.
Output
Các phần tử trong mảng theo thứ tự tăng dần.
Ví dụ
Input
5
82451
Output
12458
Bài 26.
Nhập vào mảng số nguyên gồm n (1<=n<=1000) phần tử, sắp xếp và in ra các phần
tử trong mảng theo thứ tự giảm dần. Chú ý cài đặt bằng cả 2 thuật toán( selection
và interchanger sort).
Input
Dòng đầu tiên là số phần tử của mảng.
Dòng thứ 2 là các phần tử trong mảng.
Output
Các phần tử trong mảng theo thứ tự tăng dần.
Ví dụ
Input
5
82451
Output
85421
Bài 27. Interchange sort.
Hãy thực hiện thuật toán sắp xếp đổi chỗ trực tiếp trên dãy N số nguyên. Ghi ra các
bước thực hiện thuật toán.
Input
Dòng 1 ghi số N (không quá 100). Dòng 2 ghi N số nguyên dương (không quá
100).
Output
Ghi ra màn hình từng bước thực hiện thuật toán. Mỗi bước trên một dòng, các số
trong dãy cách nhau đúng một khoảng trống.
Ví dụ
Input
4
5732
Output
Buoc 1: 2 7 5 3
Buoc 2: 2 3 7 5
Buoc 3: 2 3 5 7
Bài 28. Selection sort.
Hãy thực hiện thuật toán sắp xếp chọn trên dãy N số nguyên. Ghi ra các bước thực
hiện thuật toán.
Input
Dòng 1 ghi số N (không quá 100). Dòng 2 ghi N số nguyên dương (không quá
100).
Output
Ghi ra màn hình từng bước thực hiện thuật toán. Mỗi bước trên một dòng, các số
trong dãy cách nhau đúng một khoảng trống.
Ví dụ
Input
4
5732
Output
Buoc 1: 2 7 3 5
Buoc 2: 2 3 7 5
Buoc 3: 2 3 5 7

You might also like