ON TAP TONG HOP

Bộ đề bài

# Bài tập Điểm Thời gian: Giới hạn bộ nhớ
1 Sao 4 100 (p) 1.0s 512M
2 Tích lấy dư (HSG9-2016, Hà Nội) 100 (p) 1.0s 256M
3 dist 100 (p) 1.0s 256M
4 Ước chung đặc biệt 100 (p) 1.0s 256M
5 Cánh Diều - Drawbox - Hình chữ nhật 100 (p) 1.0s 256M
6 Sao 5 100 (p) 1.0s 512M
7 Cánh diều - TINHTIENDIEN - Tính tiền điện 100 (p) 1.0s 256M
8 Ambatukam 100 (p) 1.0s 256M
9 Chia kẹo 100 (p) 1.0s 512M
10 Chess ? (Beginner #01) 100 (p) 1.0s 256M
11 Tường gạch 100 (p) 1.0s 1G
12 cmpint 100 (p) 1.0s 640M
13 Chia hết và không chia hết 100 (p) 1.0s 256M
14 San nước cam 100 (p) 5.0s 1G
15 Xem giờ 100 (p) 1.0s 256M
16 KNTT10 - Trang 130 - Vận dụng 2 100 (p) 1.0s 256M
17 Ước số chung bản nâng cao 100 (p) 1.0s 640M
18 Module 2 100 (p) 1.0s 1023M
19 Module 3 100 (p) 1.0s 256M
20 Tuổi đi học 100 (p) 1.0s 256M
21 Biểu thức 100 (p) 1.0s 256M

1. Sao 4

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Vẽ tam giác bậc n

Example

Test 1

Input
4 
Output
      *
    ***
  *****
*******       

2. Tích lấy dư (HSG9-2016, Hà Nội)

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Cho ba số nguyên dương \(a, b, c\).

Yêu cầu: Tìm số dư của phép chia tích các số nguyên trong đoạn \([a \ldots b]\) cho số \(c\).

Input

  • Gồm 1 dòng chứa ba số nguyên dương \(a, b, c\) \((1 \le a < b \le 10^4, 1 < c \le 10^9)\).

Output

  • In ra 1 số nguyên duy nhất là số dư tìm được.

Example

Test 1

Input
5  10  11
Output
5
Note

Ta có: \(5 \times 6 \times 7 \times 8 \times 9 \times 10\) mod \(11 = 5\)

3. dist

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Cho dãy \(a\), số nguyên \(n\) phần tử, đếm số số xuất hiện trong dãy đó.

Input

  • Dòng đầu gồm số nguyên n (\(1 \leq n \leq 200000\))
  • Dòng thứ 2 gồm n số nguyên (\(-10^9 \leq a_{i} \leq 10^{9}\))

Output

  • Kết quả.

Example

Test 1

Input
5
1 3 2 3 2
Output
3

4. Ước chung đặc biệt

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Ước số chung đặc biệt của hai số nguyên \(a\) và \(b\) là số nguyên dương \(d\) sao cho \(a\) chia hết cho \(d\), \(b\) chia hết cho \(d\), và tổng các chữ số của \(d\) là lớn nhất.

Hãy tìm ước số chung đặc biệt của hai số \(a\) và \(b\).

Input

  • Trong một dòng duy nhất ghi hai số nguyên \(a, b (1 \le a, b \le 10^9)\).

Output

  • Trong một dòng duy nhất ghi ra tổng các chữ số của ước số chung đặc biệt của hai số \(a\) và \(b\).

Example

Test 1

Input
220 440
Output
10
Note

Ước chung của \(220\) và \(440\) là \(1, 2, 4, 5, 10, 11, 20, 22, 44, 55, 110, 220\). Trong số các ước này số 55 cótổng các chữ số lớn nhất. Do đó ước chung đặc biệt của 220 và 440 là 55. Kết quả in ra là tổng các chữ số của số 55, tức là bằng 10.

5. Cánh Diều - Drawbox - Hình chữ nhật

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Viết hàm vẽ hình chữ nhật gồm các dấu # có cấu trúc gồm \(a\) cột, \(10\) hàng. Sử dụng hàm đã viết thực hiện yêu cầu sau: nhập vào số nguyên \(a\), in ra hình chữ nhật gồm các dấu # như ví dụ mẫu.

Input

  • Một dòng ghi số nguyên dương \(a\) có giá trị trong \([1, 1000]\).

Output

  • In ra hình chữ nhật như hình mẫu.

Example

Test 1

Input
4
Output
####
####
####
####
####
####
####
####
####
####

6. Sao 5

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Vẽ tam giác bậc n

Example

Test 1

Input
4 
Output
*******
  *****
    ***
      *

7. Cánh diều - TINHTIENDIEN - Tính tiền điện

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Trong tháng, người tiêu dùng tiêu thụ \(x\) \((kWh)\) điện. Nếu \(x \le a\) thì số tiền phải trả là \(x * d1\); nếu \(a < x \le b\) thì phải trả \(a * d1+(x-a)*d2\); nếu \(x > b\) thì số tiền phải trả là \(a * d1+(b-a)*d2+(x-b)*d3\).

Cho các số nguyên dương \(a, b, d1, d2, d3\) và số \(x\), hãy tính và đưa ra màn hình số tiền điện phải trả.

Input

  • \(1\) dòng gồm \(6\) số nguyên cách nhau bởi dấu cách, các số có giá trị dương \(a, b, d1, d2, d3\) và số \(x\) không quá \(10^9\).

Output

  • In ra một dòng ghi một số nguyên là số tiền điện phải trả.

Example

Test 1

Input
50 100 1000 1200 2500 350 
Output
735000 

8. Ambatukam

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Anh Ba mở quán cơm ngay giữa thành phố, đã thu hút được rất nhiều khách đến ghế thăm

Quán của anh Ba có \(N\) thực khách đang chờ xếp hàng, thực khách thứ \(i\) mua một tô cơm giá \(x_i\) đồng.

Nhiệm vụ của bạn là: với mỗi thực khách thứ \(i\), tổng tiền mà quán anh Ba đã thu về được là bao nhiêu đồng?

Input

  • Dòng thứ nhất chứa số nguyên dương \(n\) (\(n \leq 10^6\)) - số thực khách.
  • Dòng thứ hai chứa \(n\) số nguyên dương \(x_1,x_2,\ldots,x_n\) (\(x_i \le 10^7\)).

Output

  • Gồm \(n\) số nguyên, tương ứng với tổng số tiền mà quán của anh Ba thu được ở thực khách thứ \(i\).

Example

Test 1

Input
5
1 2 3 4 5
Output
1 3 6 10 15
Note
  • Tại thời điểm \(1\): Thu được \(1\) đồng;
  • Tại thời điểm \(2\): Thu được \(1+2=3\) đồng;
  • Tại thời điểm \(3\): Thu được \(1+2+3=6\) đồng;
  • Tại thời điểm \(4\): Thu được \(1+2+3+4=10\) đồng;
  • Tại thời điểm \(5\): Thu được \(1+2+3+4+5=15\) đồng.

9. Chia kẹo

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

CaiWinDao có \(n\) em gái. Một hôm, CaiWinDao triệu tập \(n\) em gái này lại và cho xếp thành một hàng dọc. Sau đó, anh ấy bắt đầu đi từ đầu hàng đến cuối hàng, phát \(1\) cây kẹo cho em gái đầu tiên, \(2\) cây kẹo cho em gái thứ nhì, \(3\) cây kẹo cho em gái thứ ba, và cứ thế. Bạn hãy lập trình tính toán số kẹo CaiWinDao cần có để phát đến cuối hàng nhé!

Input

  • Một số nguyên dương \(n\) (\(1\leq n\leq 100\)).

Output

  • Số lượng kẹo CaiWinDao cần có để phát đủ cho \(n\) em gái.

Example

Test 1

Input
3
Output
6

Test 2

Input
10
Output
55

10. Chess ? (Beginner #01)

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Trên bàn cờ vua \(n \times n\), có hai quân cờ, trong đó một quân cờ là Xe.

Gọi vị trí của Xe đang đứng là \((x_f,y_f)\), con Xe có thể ăn một quân khác có tọa độ là \((x_g,y_g)\) nếu \(x_f=x_g\) hoặc \(y_f=y_g\).

Cho tọa độ của hai quân cờ trên, hỏi con Xe có ăn được quân kia không ?

Input

  • Dòng 1: \(t\) \((t \le 10^5)\);
  • \(t\) dòng tiếp theo, mỗi dòng chứa 4 số nguyên dương \(x_f,y_f,x_g,y_g\) không quá \(10\).

Output

  • In ra YES nếu con Xe có thể ăn quân kia, ngược lại in NO.

Example

Sample input

2
1 2 1 3
2 3 4 5

Sample output

YES
NO

11. Tường gạch

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 1G Input: bàn phím Output: màn hình

Trên đường đi học về bạn Bảo thấy một bức tường gạch rất đẹp và bạn ấy liền nảy ra suy nghĩ không biết số lượng viên gạch trên mặt nhìn thấy của bức tường là một số chẵn hay là một số lẻ nhỉ? Bạn liền nghĩ sẽ phải đếm số lượng viên gạch trên mặt nhìn thấy của bức tường đó, nếu là số chẵn bạn sẽ nói “YES”, ngược lại bạn sẽ nói “NO”. Nhưng như thế nào là số chẵn, như thế nào là số lẻ nhỉ. Các em hãy giúp bạn Bảo nhé!

Input

  • Dòng 1 chứa số nguyên dương N ( số lượng viên gạch có trên mặt nhìn thấy của bức tường mà bạn Bảo đếm được)

Output

  • In ra YES nếu là một số chẵn, in ra NO nếu đó là số lẻ

Example

Test 1

Input
832
Output
YES

Test 2

Input
931 
Output
NO

12. cmpint

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 640M Input: bàn phím Output: màn hình

Cho 2 số nguyên dương lớn \(a, b\) (nhiều nhất 100 chữ số).

Hãy điền dấu \(>, <, =\) vào dấu 3 chấm

a ... b

Lưu ý trong input các số \(a, b\) có chứa số \(0\) ở đầu.

Example

Test 1

Input
010
11
Output
<

13. Chia hết và không chia hết

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Viết chương trình tìm tất cả các số chia hết cho \(3\) nhưng không phải bội số của \(5\), nằm trong đoạn \(1\) và \(n\) (tính cả \(1\) và \(n\)).
Các số thu được sẽ được in thành chuỗi trên một dòng, cách nhau bằng dấu cách.

Input

  • Một dòng duy nhất chứa số \(n(1\le n\le 5000)\).

Output

  • In ra đáp án cần tìm.

Example

Test 1

Input
10
Output
3 6 9

14. San nước cam

Điểm: 100 (p) Thời gian: 5.0s Bộ nhớ: 1G Input: bàn phím Output: màn hình

Tí và Tèo là 2 anh em sinh đôi, hai bạn rất thân với nhau và luôn thích mọi thứ giống nhau. Chẳng hạn như, nếu mẹ cho 2 anh em 2 ly nước cam thì các bạn cũng muốn lượng nước cam cũng phải bằng nhau mới chịu(hihi). Tuy nhiên, không phải lúc nào mẹ cũng khéo léo để đưa ra lượng nước cam bằng nhau cho cả 2 ly, những lúc như vậy các bạn cần phải san ở ly nhiều hơn sang ly ít hơn để đảm bảo hai ly sẽ có lượng nước cam bằng nhau. Tí và Tèo cũng thích học lập trình Scratch nên hai bạn quyết định viết một chương trình để thực hiện công việc trên. Cụ thể như sau:

Input

  • Dòng 1 chứa số nguyên dương N ( lượng nước cam trong ly A)
  • Dòng 2 chứa số nguyên dương M (lượng nước cam có trong ly 😎

Output

  • In ra kết quả: Chuyển từ ly nào sang ly nào với lượng nước là bao nhiêu(ml), nếu đã bằng nhau thì ghi ra là 0.

Example

Test 1

Input
200
220
Output
Ly B sang ly A 10 ml

Test 2

Input
250
220
Output
Ly A sang ly B 15 ml

15. Xem giờ

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Bố đang dạy Luffy học xem giờ. Nhà Luffy có chiếc đồng hồ treo tường, hiện tại đang chỉ \(2\) giờ. Bố đố Luffy biết sau ít nhất bao nhiêu giờ thì đồng hồ chỉ \(K\) giờ?

Input

  • Một số tự nhiên \(K\) \((1 \leq K \leq 12)\).

Output

  • Một số tự nhiên là kết quả của câu đố mà bố đố Luffy.

Example

Test 1
Input
5
Output
3
Test 2
Input
1
Output
11

16. KNTT10 - Trang 130 - Vận dụng 2

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Viết chương trình yêu cầu nhập từ bàn phím một xâu kí tự, sau đó thông báo:

  • Tổng số các kí tự là chữ số của xâu.
  • Tổng số các kí tự là chữ cái tiếng Anh trong xâu.

Viết hàm cho mỗi yêu cầu trên.

Input

  • Xâu \(S\).

Output

  • Số lượng các kí tự là chữ số có trong xâu \(S\); số lượng các kí tự là chữ cái tiếng Anh trong xâu \(S\).

Example

Test 1

Input
thpt cla 112
Output
Số kí tự chữ số trong xâu là: 3
Số kí tự chữ cái trong xâu là: 7

17. Ước số chung bản nâng cao

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 640M Input: bàn phím Output: màn hình

Số nguyên dương \(p\) gọi là ước số chung của \(n\) 𝑣à \(m\) khi \(m\) 𝑣à \(n\) cùng chia hết cho \(p\).

Viết chương trình nhập vào một số nguyên dương \(n,m\) (\(n,m \leq 10^{7}\)).

Hãy in ra tất cả các ước số chung của \(n\) 𝑣à \(m\).

Input

  • Nhập \(2\) số nguyên dương \(n,m\).

Output

  • In ra các ước số chung của chúng.

Example

Test 1

Input
54 72 
Output
1 2 3 6 9 18

18. Module 2

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 1023M Input: bàn phím Output: màn hình

Bạn được cho 2 số nguyên không âm \(a\), \(n\). Hãy tính \(a^n \% (10^9+7)\)

Input

  • Dòng đầu tiền : 2 số nguyên không âm \(a, n (a,n \leq 10^9)\)

Output

  • \(a^n \% (10^9+7)\).

Test 1

Input
2 6
Output
64

19. Module 3

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Bạn được cho ba số nguyên dương \(a\), \(b\) và \(c\). Hãy tính tính phần dư của giá trị \((a \times b)\) khi chia cho \(c\).

Input

  • Chứa ba số nguyên dương \(a\), \(b\) và \(c\) \((a,b,c \leq 10^{18})\).

Output

  • Phần dư của giá trị \((a \times b)\) khi chia cho \(c\).

Test 1

Input
1 2 3
Output
2

20. Tuổi đi học

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Nam năm nay lên \(7\) tuổi và bước vào lớp \(1\). Nam tự hỏi nếu khi mình \(X\) tuổi thì Nam sẽ học lớp mấy. Nếu Nam chưa đủ tuổi vào lớp \(1\), in ra "Chua di hoc". Nếu Nam đã quá tuổi học lớp 12, in ra "Da tot nghiep". Nếu Nam ở độ tuổi học từ lớp \(1\) đến lớp \(12\), in ra "Lop \(A\)" với \(A\) là lớp Nam học khi \(X\) tuổi.

Input

  • Dòng duy nhất chứa 1 số nguyên dương \(X\) \((1 \leq X \leq 100)\)

Output

  • Dòng duy nhất chứa kết quả:

    • Nếu Nam chưa đủ tuổi vào lớp \(1\), in ra "Chua di hoc"
    • Nếu Nam đã quá tuổi học lớp \(12\), in ra "Da tot nghiep"
    • Nếu Nam ở độ tuổi từ lớp \(1\) đến lớp \(12\), in ra "Lop \(A\)", với \(A\) là lớp của Nam.

Example

Test 1

Input
9
Output
Lop 3
Note

Test 2

Input
19
Output
Da tot nghiep
Note

Test 3

Input
6
Output
Chua di hoc
Note

21. Biểu thức

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Một dãy gồm \(n\) số nguyên không âm \(a_1, a_2,..., a_n\) được viết thành một hàng ngang, giữa hai số liên tiếp có một khoảng trắng, như vậy có tất cả \((n­-1)\) khoảng trắng. Người ta muốn đặt \(k\) dấu cộng và (\(n-1-k\)) dấu trừ vào \((n­-1)\) khoảng trắng đó để nhận được một biểu thức có giá trị lớn nhất.

Ví dụ, với dãy gồm \(5\) số nguyên \(28, 9, 5, 1, 69\) và \(k = 2\) thì cách đặt \(28+9-5-1+69\) là biểu thức có giá trị lớn nhất.

Yêu cầu: Cho dãy gồm \(n\) số nguyên không âm \(a_1, a_2,..., a_n\) và số nguyên dương \(k\), hãy tìm cách đặt \(k\) dấu cộng và (\(n-1-k\)) dấu trừ vào (\(n­-1\)) khoảng trắng để nhận được một biểu thức có giá trị lớn nhất.

Input

  • Dòng đầu chứa hai số nguyên dương \(n, k\) (\(k < n\));
  • Dòng thứ hai chứa \(n\) số nguyên không âm \(a_1, a_2,..., a_n\) (a_n ≤ 10^6)

Output

  • Một số nguyên là giá trị của biểu thức đạt được.

Scoring

  • Subtask \(1\) (\(50\%\) số điểm): \(n ≤ 10^5\) và \(k = 1\);
  • Subtask \(2\) (\(50\%\) số điểm): \(n ≤ 10^5\);

Example

Test 1

Input
5 2
28 9 5 1 69 
Output
100