Cấu trúc lặp

Bộ đề bài

# Bài tập Điểm Thời gian: Giới hạn bộ nhớ
1 In n số tự nhiên 100 (p) 1.0s 640M
2 Tổng lẻ 100 (p) 1.0s 640M
3 Ước số của n 100 (p) 1.0s 640M
4 Số lượng ước số của n 100 (p) 1.0s 640M
5 Số hoàn hảo 100 (p) 0.5s 640M
6 Số may mắn 100 (p) 1.0s 1023M
7 Lại là dấu * 100 (p) 1.0s 640M
8 Hello again 100 (p) 1.0s 640M
9 Thực hiện biểu thức 1 100 (p) 1.0s 640M
10 Thực hiện biểu thức 2 100 (p) 1.0s 640M
11 Vận tốc trung bình 100 (p) 1.0s 640M
12 Điểm trung bình môn 100 (p) 1.0s 640M
13 biểu thức 100 (p) 1.0s 977M
14 biểu thức 2 100 (p) 1.0s 977M
15 Vẽ tam giác vuông cân 100 (p) 1.0s 256M
16 Vẽ hình chữ nhật 100 (p) 1.0s 256M
17 Tìm số 100 (p) 1.0s 256M
18 In dãy #2 100 (p) 1.0s 256M
19 Chữ số tận cùng #1 100 (p) 1.0s 256M
20 Phân tích #4 100 (p) 1.0s 256M
21 Phân tích #3 100 (p) 1.0s 256M
22 Số nguyên tố lớn nhất 100 (p) 1.0s 1G
23 Số nguyên tố 100 (p) 1.0s 256M
24 Số đặc biệt #2 100 (p) 1.0s 256M
25 Số đặc biệt #1 100 (p) 1.0s 256M
26 Số lần nhỏ nhất 100 (p) 1.0s 256M
27 So sánh #4 100 (p) 1.0s 256M
28 So sánh #3 100 (p) 1.0s 256M
29 Số may mắn 100 (p) 10.0s 256M

1. In n số tự nhiên

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

Viết chương trình nhập vào một số nguyên dương \(n\). Hãy in ra \(n\) số tự nhiên đầu tiên.

Input

  • Một số nguyên dương \(n\)(\(n\leq 10^5\)) .

Output

  • In \(n\) số tự nhiên đầu tiên

Example

Test 1

Input
5
Output
1 2 3 4 5

Test 2

Input
7
Output
1 2 3 4 5 6 7

2. Tổng lẻ

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

Viết chương trình nhập vào một số nguyên dương \(n\). Hãy in ra tổng các số lẻ trong \(n\) số tự nhiên đầu tiên.

Input

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

Output

  • In tổng lẻ của \(n\) số tự nhiên đầu tiên.

Example

Test 1

Input
5
Output
9

Test 1

Input
10
Output
25

3. Ước số của n

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

Viết chương trình nhập vào số nguyên \(n\) (\(n\leq 10^7\)). In ra tất cả các ước số của \(n\). (Ước số của \(n\) là các số nguyên mà \(n\) chia hết)

Ví dụ: \(n=10\) thì in ra các số: \(1\) \(2\) \(5\) \(10\)

Input

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

Output

  • In ra các ước số của \(n\).

Example

Test 2

Input
10
Output
1 2 5 10

Test 2

Input
36
Output
1 2 3 4 6 9 12 18 36

4. Số lượng ước số của n

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

Viết chương trình nhập vào số nguyên \(n\) (\(n\leq 10^7\)). In ra số lượng ước số của \(n\). (Ước số của \(n\) là các số nguyên mà \(n\) chia hết)

Ví dụ: \(n=10\) thì \(4\) ước số: \(1\) \(2\) \(5\) \(10\)

Input

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

Output

  • In ra số lượng ước số của \(n\).

Example

Test 1

Input
10
Output
4

Test 2

Input
36
Output
9

5. Số hoàn hảo

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

Số hoàn hảo là số mà tổng các ước của nó bằng \(2\) lần chính nó.

Ví dụ: \(6\) là số hoàn hảo vì \(6\) có tổng ước là \(1+2+3+6=12 = 2\) lần số \(6\).

Yêu cầu: Viết chương trình nhập vào số nguyên \(n\). In ra chữ YES nếu \(n\) là số hoàn hảo, ngược lại ghi chữ NO

Input

  • Một số nguyên dương \(n\)(\(n\leq 10^{12}\)).

Output

  • In ra chữ YES nếu \(n\) là s ố hoàn hảo, ngược lại ghi chữ NO.

Example

Test 1

Input
6
Output
YES

Test 2

Input
36
Output
NO

6. Số may mắn

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

Một số tự nhiên được cho là số may mắn nếu các chữ số của số đó chỉ có thể là số \(6\) hoặc số \(9\).

Yêu cầu: Cho số \(n \ (1 \leq n \leq 55)\), hãy tìm số lượng số may mắn có số chữ số \(\leq n\).

Input

  • 1 số nguyên dương \(n \ (1 \leq n \leq 55)\).

Output

  • Số lượng số may mắn có số chữ số không quá \(n\).

Example

Test 1

Input
2 
Output
6
Note

Các số may mắn là: \(6, 9, 66, 99, 69, 96\).

7. Lại là dấu *

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

In ra màn hình theo mẫu

Example

Test 1

Output
Hello world
*
**
***
**
*

8. Hello again

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

Example

Test 1

Output


                     * *
                   *     *
*    *   *     *   * * * *   *
*  *     *     *   *     *   *
* *      * * * *   *     *   *
*  *     *     *   *     *   *
*    *   *     *   * * * *   *

9. Thực hiện biểu thức 1

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

Viết chương trình nhập vào ba số nguyên và thực hiện các biểu thức sau.

Input

  • Một dòng duy nhất là ba số nguyên \(a,b,c\)

Output

  • Dòng 1: kết quả \(a+b/c− c\%a\)
  • Dòng 2: kết quả \(−a+b\) \(∗\) \(c\)
  • Dòng 3: kết quả \(a/b/c\)
  • Dòng 4: kết quả \(a\%b\%c\)

(Phép \(/\) là phép chia lấy thương, Phép \(\%\) là phép chia lấy dư)

Constraints

  • \(1 \leq a,b,c \leq 1000\)

Example

Test 1

Input
8 4 10 
Output
6
32
0
0

10. Thực hiện biểu thức 2

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

Viết chương trình nhập vào ba số nguyên và thực hiện biểu thức sau.

Input

  • Một dòng duy nhất là ba số nguyên \(a,b,c\)

Output

  • Kết quả của biểu thức \(2^{a+b} - 4^{c}\)

Constraints

  • \(1 \leq a,b,c \leq 10\)

Example

Test 1

Input
3 2 1 
Output
28

11. Vận tốc trung bình

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

Viết chương trình nhập vào quãng đường \(s_{1}\) và thời gian \(t_{1}\) của xe \(1\), quãng đường \(s_{2}\) và thời gian \(t_{2}\) của xe \(2\).

Hãy so sánh vận tốc của xe \(1\) với vận tốc của xe \(2\).

Input

  • Một dòng duy nhất là bốn số nguyên \(s_{1}, t_{1}, s_{2}, t_{2}\) \((1 \leq s_{1}, t_{1}, s_{2}, t_{2} \leq 10^{4})\).

Output

  • In ra YES nếu vận tốc xe \(1\) lớn hơn vận tốc xe \(2\). Ngược lại in ra NO.

Example

Test 1

Input
3 2 1 7 
Output
YES

12. Điểm trung bình môn

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

Khôi vừa nhận được điểm học kỳ vừa rồi. \(3\) điểm Toán, Văn, Anh tương ứng với \(a,b,c\).

Hãy tính xem kỳ này Khôi được hạnh kiểm gì nhé!

Biết rằng điểm Toán, Văn thuộc hệ số \(2\).

Input

  • Gồm 3 dòng:
    • Dòng thứ nhất chứa số \(a\)
    • Dòng thứ hai chứa số \(b\)
    • Dòng thứ ba chứa số \(c\)

Output

  • Nếu điểm trung bình của Khôi \(\geq 8\) thì in ra "gioi", ngược lại nếu dtb của Khôi \(\geq 6.5\) thì in ra "kha banh", ngược lại nếu dtb của Khôi \(\geq 5.0\) thì in ra "trung binh", ngược lại in ra "yeu".

Constraints

  • \(0 \leq a,b,c \leq 10\)

Example

Test 1

Input
8.1
8.2
8.3 
Output
gioi

13. biểu thức

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

Yêu cầu: Tính tổng S = 1^2 + 2^2 + ... + n^2.

Dữ liệu: Cho 1 số nguyên dương n (n<=10^6).

Kết quả: Tổng S.

Ví dụ
Input:

  2

Output:

  5

14. biểu thức 2

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

Cho trước \(n\), hãy tính \(S(n) = 1 + \frac{1}{2} + \frac{1}{3} + … + \frac{1}{n}\)
là tổng của \(n\) phân số nghịch đảo của \(n\) số nguyên dương đầu tiên.

Dữ liệu:

  • Cho 1 số nguyên dương \(n (n\le 10^6)\).

Kết quả:

  • Tổng \(S\), làm tròn 3 chữ số sau dấu phẩy

Ví dụ

Example

Input

2

Output

1.500

15. Vẽ tam giác vuông cân

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

Trang muốn tặng An một tam giác vuông cân gồm toàn dấy '*' với độ dài cạnh \(n\) nhân dịp sinh nhật, hãy giúp Trang nhé.

Input

  • Gồm một dòng chứa số nguyên dương \(n\) \((n \leq 10^3)\) là độ dài cạnh của tam giác.

Output

  • Gồm \(n\) dòng như định dạng của output mẫu.

Example

Test 1
Input
6
Output
******
*****
****
***
**
*

16. Vẽ 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

Nhập 2 số \(n, m\). Hãy in ra hình chữ nhất bằng kí tự '#' có kích thước \(n \times m\).

Input

  • Gồm \(n\) dòng, mỗi dòng gồm \(m\) kí tự mô tả kết quả của bài toán.

Output

  • Gồm \(n\) dòng, mỗi dòng gồm \(m\) kí tự mô tả kết quả của bài toán.

Example

Test 1
Input
3 4
Output
####
####
####

17. Tìm số

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

Cho n là 1 số nguyên tố cùng nhau với \(10\). Tìm số bé nhất gồm toàn số 1 và chia hết cho \(n\).

Input

  • Gồm một dòng duy nhất chứa số nguyên dương \(n\) \((n \leq 10^6)\).

Output

  • Gồm một dòng duy nhất chứa số lượng số 1 của số thỏa mãn gồm toàn số 1 và chia hết cho \(n\).

Example

Test 1
Input
37
Output
3

18. In dãy #2

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

Cho 1 số \(n\), in 1 dãy số mới có \(n\) phần tử sao cho số thứ \(i\) là tổng các số từ \(1\) đến \(i\).

Input

  • Gồm một dòng duy nhất chứa số nguyên dương \(n\) \((n \leq 10000)\).

Output

  • Gồm \(n\) dòng, dòng thứ \(i\) là tổng từ \(1\) đến \(i\).

Example

Test 1
Input
3
Output
1
3
6

19. Chữ số tận cùng #1

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

Nhập vào số nguyên dương \(n\).

In ra số chữ số \(0\) liên tiếp ở tận cùng của \(n!\).

Input

  • Gồm một dòng chứa số nguyên dương \(n\) \((n \leq 10^9)\).

Output

  • Gồm một dòng chứa một số nguyên dương duy nhất là số chữ số \(0\) liên tiếp ở tận cùng của \(n!\).

Example

Test 1
Input
10
Output
2
Test 2
Input
16
Output
3

20. Phân tích #4

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

Nhập vào 1 số nguyên dương \(n\). Phân tích số \(n\) thành tích các số nguyên tố.

Input

  • Gồm một dòng duy nhất chứa số nguyên dương \(n\) \((n \leq 10^9)\).

Output

  • Gồm một dòng duy nhất chứa các thừa số nguyên tố sau khi phân tích của \(n\). Các số cách nhau 1 dấu cách và xếp theo thứ tự tăng dần.

Example

Test 1
Input
24
Output
2 2 2 3 
Test 2
Input
30
Output
2 3 5 

21. Phân tích #3

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

Nhập vào số nguyên dương \(n\). In ra trung bình cộng các chữ số của \(n\).

Input

  • Gồm một dòng duy nhất chứa số nguyên dương \(n\) \((n \leq 10^9)\).

Output

  • Gồm một dòng duy nhất chứa kết quả là trung bình cộng các chữ số của \(n\) (làm tròn đến chữ số thập phân thứ 2).

Example

Test 1
Input
346
Output
4.33
Test 2
Input
123
Output
2.00

22. Số nguyên tố lớn nhất

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

Nhập vào 1 số nguyên dương \(n\). In ra số nguyên tố lớn nhất nhỏ hơn hoặc bằng \(n\).

Input

  • Gồm một dòng duy nhất chứa số nguyên dương \(n\) \((2 \leq n \leq 10^5)\).

Output

  • Gồm một dòng duy nhất chứa số nguyên tố lớn nhất nhỏ hơn hoặc bằng \(n\).

Example

Test 1
Input
6
Output
5

23. Số nguyên tố

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

An muốn biết một số có phải là số nguyên tố không. Nếu số \(n\) là số nguyên tố, bạn hãy in ra "YES", nếu không hãy in ra ước nguyên tố dương nhỏ nhất của \(n\).

Input

  • Gồm một dòng duy nhất chứa số nguyên dương \(n\) \((n \leq 10^6)\).

Output

  • Gồm một dòng duy nhất chứa kết quả của bài toán.

Example

Test 1
Input
5
Output
YES
Test 2
Input
6
Output
2

24. Số đặc biệt #2

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

Nhập vào dãy \(a\) có \(n\) phần tử. Đếm xem trong dãy \(a\) có bao nhiêu số đặc biệt. Biết rằng số đặc biệt là số chia hết cho tổng các chữ số của chính số đó.

Input

  • Dòng đầu tiên chứa số nguyên dương \(n\) \((n \leq 1000)\) là số lượng phần tử của dãy số.
  • Dòng thứ hai chứa \(n\) số nguyên dương lần lượt là \(a_1, a_2, \ldots, a_n\) \((a_i \leq 10^6, 1 \leq i \leq n)\).

Output

  • Gồm một dòng duy nhất chứa kết quả là số lượng số đặc biệt trong dãy \(a\).

Example

Test 1
Input
5
1 3 5 12 15
Output
4

25. Số đặc biệt #1

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

Số đặc biệt là một số chia hết cho tổng các chữ số của nó. Nhập vào 1 số nguyên \(n\). Kiểm tra xem \(n\) có phải số đặc biệt không?

Input

  • Gồm một dòng duy nhất chứa 1 số nguyên \(n\) \((0 \leq n \leq 10^9)\).

Output

  • Gồm một dòng duy nhất chứa xâu kí tự "YES" nếu \(n\) là số đặc biệt, và ngược lại "NO" nếu \(n\) không là số đặc biệt.

Example

Test 1
Input
12
Output
YES
Test 2
Input
13
Output
NO

26. Số lần nhỏ nhất

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

Tưởng tượng răng bạn đi trên vỉa hè đi (vỉa hè ở Mỹ nhé, vỉa hè này thì xịn khỏi nói rồi). Nhưng đang đi thì tự dưng bạn mỗi chân, không muốn đi nữa, trong khi phải có \(n\) bước nữa tới nhà. Rất may bạn là một diễn viên giỏi, nên có thể cầu xin người đi đường chở mình đi. Mỗi lần đi nhờ, bạn sẽ từ vị trí \(x\), bạn có thể được đi nhờ tới vị trí \(x + 1, x + 2, x + 3, x + 4\) hoặc \(x + 5\). Tuy bạn có thể xin người khác đi nhờ, nhưng do vẫn còn tí liêm sĩ trong người, nên bạn đang mong muốn đi nhờ ít lần nhất để về tới nhà.

Hãy tính toán nhé số lần phải đi nhờ để về tới nhà.

Input

  • Gồm một dòng duy nhất chứa 1 số nguyên không âm \(n\) \((n \leq 10^6)\).

Output

  • Gồm dòng duy nhất chứa kết quả bài toán.

Example

Test 1
Input
23
Output
5

27. So sánh #4

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

Tìm số lớn nhất trong 5 số đề cho.

Input

  • Gồm một dòng duy nhất chứa 5 số nguyên lần lượt là \(a, b, c, d, e\) \((0 \leq a, b, c, d, e \leq 10^6)\).

Output

  • Gồm một số duy nhất là số lớn nhất trong 5 số đã cho.

Example

Test 1
Input
1 5 1 2 4
Output
5
Test 2
Input
0 8 2 1 8
Output
8

28. So sánh #3

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

Tìm số lớn nhất, bé nhất trong \(3\) số nguyên \(a, b, c\).

Input

  • Gồm một dòng duy nhất chứa \(3\) số nguyên lần lượt là \(a, b, c\) \((|a, b, c| \leq 1000)\).

Output

  • Gồm một dòng duy nhất chứa \(2\) số nguyên lần lượt là số bé nhất, lớn nhất.

Example

Test 1
Input
9 6 2
Output
2 9
Test 2
Input
1 9 5
Output
1 9

29. Số may mắn

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

An thích các số may mắn. Mọi người đều biết rằng các số may mắn là các số nguyên dương chỉ chứa các chữ số thuộc tập \({6, 8}\). Ví dụ: các số 68, 866, 6 là số may mắn và 5, 18, 678 thì không. An gọi một số là gần may mắn nếu nó chia hết cho một số may mắn. Lưu ý rằng tất cả các số may mắn đều là số gần may mắn, vì bất kỳ số nào cũng chia hết cho chính nói.

Bạn hãy giúp An kiểm tra xem số \(n\) cho trước có là số gần may mắn hay không?

Input:

  • Gồm một dòng chứa số nguyên \(n\) \((0 \le n \le 1000)\)

Output:

  • Nếu n là số gần may mắn thì ghi ra "YES", ngược lại ghi ra "NO"

Example 1:

Input:

12

Output:

YES