Ôn Tập Sau kì nghỉ

Bộ đề bài

# Bài tập Điểm Thời gian: Giới hạn bộ nhớ
1 Tính tổng 100 (p) 1.0s 640M
2 Số có 2 chữ số 100 (p) 1.0s 256M
3 Tính số bàn học 100 (p) 1.0s 256M
4 Tìm số bị chia khi biết số chia, thương và số dư 100 (p) 1.0s 256M
5 Dung dịch sát khuẩn 100 (p) 1.0s 1G
6 Số chính phương 100 (p) 1.0s 640M
7 Số chẵn (THT A Liêu Chiểu, Đà Nẵng 2026) 100 (p) 1.0s 256M
8 Chọn thẻ (THT A Liêu Chiểu, Đà Nẵng 2026) 100 (p) 1.0s 256M
9 Số Bích Phương 100 (p) 1.0s 1023M
10 Chia hết 2 (THTA Vòng Sơ loại Toàn quốc 2025 - Lần 2) 100 (p) 1.0s 1G
11 CSES - Weird Algorithm | Thuật toán lạ 100 (p) 1.0s 512M
12 Robot (THT C2 Đà Nẵng 2022) 100 (p) 1.0s 500M
13 Tổng dãy số (THTA Đà Nẵng 2022) 100 (p) 5.0s 256M
14 Đếm số ký tự (THTA Đà Nẵng 2022) 100 (p) 5.0s 256M
15 Tam giác số (THTA Đà Nẵng 2022) 100 (p) 5.0s 256M

1. Tính tổng

Đ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 tính tổng các số nguyên được nhập từ bàn phím cho đến khi nhập số \(0\) thì dừng.

Input

  • Nhập các số nguyên, mỗi số trên một dòng.

Output

  • Tổng các số vừa nhập.

Example

Test 1

Input
7 
3 
2 
4 
0 
Output
16

2. Số có 2 chữ số

Đ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 nhập vào một số nguyên có 2 chữ số, in ra chữ số hàng chục và hàng đơn vị.

Input

  • Một số nguyên có 2 chữ số.

Output

  • Dòng đầu tiên in chữ số hàng chục.
  • Dòng tiếp theo in chữ số hàng đơn vị.

Example

Test 1

Input
24 
Output
2
4

3. Tính số bàn học

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

Trường mới rộng và đẹp hơn trường cũ, số phòng học cũng nhiều hơn so với trước. Nhà trường định tuyển thêm học sinh cho ba lớp mới với số lượng học sinh mỗi lớp tương ứng là \(a, b, c\). Cần mua bàn cho các lớp mới này. Mỗi bàn không có quá \(2\) chỗ ngồi cho học sinh. Xác định số lượng bàn tối thiểu cần mua?

Input

  • Gồm ba dòng ghi lần lượt \(a, b, c\) (các giá trị số nguyên dương trong \([1, 500]\)).

Output

  • Một số nguyên là số lượng bàn tối thiểu cần mua (xem thêm ví dụ mẫu để biết định dạng output).

Example

Test 1

Input
35 
42 
39 
Output
So ban toi thieu can mua: 59 

4. Tìm số bị chia khi biết số chia, thương và số dư

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

Nhập 3 số nguyên a, b, c \((0\le|a|,\ \ |b|,\ \ |c|\le10^9)\)

Yêu cầu:

  • Tìm số bị chia khi biết số chia, thương và số dư

Input

  • một dòng chứa 3 số nguyên tương ứng là số chia, thương và số dư.

Output

  • Kết quả cần tìm.

Ví dụ

Input

3 5 2

Output
17

5. Dung dịch sát khuẩn

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

Một bệnh viện cần tối thiểu \(v\) lít dung dịch sát khuẩn để khử trùng phòng bệnh. Mỗi chai chứa \(x\) lít dung dịch. Hãy tính số chai tối thiểu cần mua để đảm bảo đủ lượng dung dịch yêu cầu.

Input

  • Gồm hai số thực \(v\) và \(x\) (\(0 < v, x \leq 10^4\)).

Output

  • Một số nguyên duy nhất là số chai tối thiểu cần mua.

Example

Test 1

Input
17.5 5
Output
4
Note

Bệnh viện cần tối thiểu \(17.5\) lít, mỗi chai có \(5\) lít.

  • Nếu mua \(3\) chai thì có \(3 \cdot 5 = 15\) lít (không đủ).
  • Nếu mua \(4\) chai thì có \(4 \cdot 5 = 20\) lít (đủ).
    Vậy số chai tối thiểu cần mua là \(4\).

6. Số chính phương

Đ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 \(n\). Kiểm tra xem \(n\) có phải là số chính phương hay không?
(Số chính phương là bình phương của một số nguyên ví dụ như \(16=4^2\)).

Input

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

Output

  • Nếu \(n\) là số chính phương thì in YES, ngược lại in NO

Example

Test 1

Input
16 
Output
YES

Test 2

Input
10 
Output
NO

7. Số chẵn (THT A Liêu Chiểu, Đà Nẵng 2026)

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

Số chẵn là số chia hết cho \(2\). Cho hai số tự nhiên \(L\) và \(R\). Hãy đếm xem có bao nhiêu số chẵn lớn hơn \(L\) và nhỏ hơn \(R\).

Input

  • Gồm hai số tự nhiên \(L, R\) (\(L < R \leq 10^{12}\)). Mỗi số trên một dòng.

Output

  • In ra kết quả của bài toán.

Example

Test 1

Input
5
31
Output
13
Note

Có \(13\) số chẵn lớn hơn \(5\) và nhỏ hơn \(31\) là: \(6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30\).

8. Chọn thẻ (THT A Liêu Chiểu, Đà Nẵng 2026)

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

Hai bạn An và Bình chơi một trò chơi như sau:

  • An chọn tất cả các số tự nhiên từ \(A\) đến \(B\).
  • Bình chọn tất cả các số tự nhiên từ \(C\) đến \(D\).

Hãy xác định có bao nhiêu số được ít nhất một trong hai bạn chọn.

Input

  • Gồm 4 số nguyên \(A, B, C, D\), mỗi số trên một dòng (\(A \le B, C \le D\)).

Output

  • In ra số lượng các số được ít nhất một trong hai bạn chọn.

Example

Test 1

Input
1
5
4
7
Output
7
Note

An chọn: \(1, 2, 3, 4, 5\)

Bình chọn: \(4, 5, 6, 7\)

Các số được ít nhất một bạn chọn là: \(1, 2, 3, 4, 5, 6, 7\)

Có tất cả \(7\) số.

9. Số Bích Phương

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

Cho trước một số nguyên dương \(n\). Một số nguyên dương vừa có phần dư là 1 khi bị chia bởi \(n\) ,vừa là số chính phương thì được gọi là số bích phương.

Yêu cầu: Cho số nguyên dương \(n\) (\(n \leq 10 ^ 9\)). Hãy tìm số bích phương lớn nhất nhỏ hơn \(n^2\).

Input

  • Số nguyên dương \(n\) (\(2 \leq n \leq 10 ^ 9\)).

Output

  • Số bích phương lớn nhất nhỏ hơn \(n ^ 2\).

Example

Test 1

Input
2 
Output
1

Test 2

Input
4 
Output
9

10. Chia hết 2 (THTA Vòng Sơ loại Toàn quốc 2025 - Lần 2)

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

Cho bốn chữ số \(A, B, C, D\).
Hỏi bốn số này có thể tạo thành bao nhiêu số có hai chữ số chia hết cho \(2\), và không có chữ số \(0\) ở đầu.

Yêu cầu

Tìm số lượng các số có hai chữ số thỏa mãn điều kiện trên.

Dữ liệu nhập từ bàn phím

  • Gồm bốn số tự nhiên \(A, B, C, D\) (\(0 \leq A, B, C, D \leq 9\)). Mỗi số nằm trên một dòng.

Kết quả ghi ra màn hình

  • Một số tự nhiên duy nhất là kết quả của bài toán.

Ví dụ

Test ví dụ 1
Dữ liệu
0
3
5
2
Kết quả
6
Giải thích
  • Các số thỏa mãn: 20, 22, 30, 32, 50, 52.
Test ví dụ 2
Dữ liệu
2
4
2
4
Kết quả
4
Giải thích
  • Các số thỏa mãn: 22, 24, 42, 44.

Ràng buộc

  • Có 30% số test ứng với 30% số điểm thỏa mãn: \(A, B, C, D\) là các chữ số khác nhau và khác \(0\).
  • Có 20% số test ứng với 20% số điểm thỏa mãn: \(A, B, C, D\) là các chữ số khác nhau.
  • Có 50% số test còn lại ứng với 30% số điểm không có giới hạn gì thêm.

11. CSES - Weird Algorithm | Thuật toán lạ

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

Xét thuật toán sau nhận đầu vào là một số nguyên dương \(n\). Nếu \(n\) chẵn, thuật toán sẽ chia nó cho hai, và nếu \(n\) lẻ, thuật toán nhân ba nó lên rồi cộng thêm một đơn vị. Thuật toán trên lặp lại điều này cho tới khi \(n\) bằng \(1\). Ví dụ, dãy số thực hiện với \(n=3\) là:

\[3 \rightarrow 10 \rightarrow 5 \rightarrow 16 \rightarrow 8 \rightarrow 4 \rightarrow 2 \rightarrow 1\]

Việc của bạn là hãy mô phỏng lại cách hoạt động của thuật toán với một giá trị \(n\) cho trước.

Input

  • Một dòng duy nhất chứa số \(n\)
  • \(1 \leq n \leq 10^6\)

Output

  • In ra một dòng lần lượt chứa từng giá trị của \(n\) trong khi chạy thuật toán

Example

Test 1

Input
3
Output
3 10 5 16 8 4 2 1

12. Robot (THT C2 Đà Nẵng 2022)

Điểm: 100 (p) Thời gian: 1.0s Bộ nhớ: 500M Input: ROBOT.INP Output: ROBOT.OUT

Trong quá trình tìm tòi, nghiên cứu tài liệu để xây dựng phần mềm dự thi bảng D3 trong kì thi Tin
học trẻ. Sau một thời gian tìm hiểu Sĩ đã thiết kế được một con robot tự động, nhiệm vụ của con robot
này là với một dãy kí tự \(S\) bất kì sẽ thực hiện được hai phép biến đổi là phép quay trái \(L\) và phép quay
phải \(R\).

Phép biến đổi \(L\) sẽ dời kí tự trong dãy từ trái sang phải, kí tự đầu tiên của dãy sẽ chuyển xuống kí tự
cuối cùng của dãy.

Ví dụ: abcde, trạng thái dãy sau khi biến đổi \(L\) là bcdea
Phép biến đổi \(R\) sẽ dời kí tự trong dãy từ phải sang trái, kí tự cuối cùng của dãy sẽ chuyển lên kí tự
đầu tiên của dãy.

Ví dụ: abcde, trạng thái dãy sau khi biến đổi \(R\) là eabcd
Vì con Robot bạn thiết kế còn quá đơn giản nên không thể thực hiện được một dãy liên tiếp các phép
biến đổi, em hãy giúp bạn cải tiến con Robot trên nhé.

Yêu cầu: Cho 1 dãy các phép biến đổi, sau khi thực hiện tuần tự các phép biến đổi đã cho, dãy \(S\) sẽ
chuyển sang trạng thái dãy \(S1\) mới. Hãy tìm trạng thái này.

Input

Đọc từ file văn bản ROBOT.INP gồm hai dòng

  • Dòng thứ nhất chứa xâu \(S\) có độ dài không quá \(10^5\) kí tự.
  • Dòng thứ hai chứa xâu \(A\) chỉ gồm các kí tự \(L, R\) viết liền nhau dùng để biểu diễn tuần tự các phép
    biến đổi của Robot. Chiều dài không quá \(10^6\) kí tự.

Output

  • Ghi ra file văn bản ROBOT.OUT dãy \(B\) là kết quả của bài toán.

Scoring

  • Subtask \(1\) (\(50\%\) số điểm): độ dài của xâu \(S\) không vượt quá 255 kí tự
  • Subtask \(2\) (\(50\%\) số điểm): độ dài của xâu \(S\) không vượt quá \(10^5\) kí tự.

Example

Test 1

Input
abcde
RRR
Output
cdeab
Note

Sau khi thực hiện 3 lần phép quay phải kết quả nhận được là cdeab nên đưa ra cdeab

Test 2

Input
abcde
RLRR
Output
deabc
Note

Sau khi thực hiện 3 lần phép quay phải và 1 lần phép quay trái kết quả nhận được là deabc nên đưa ra deabc

13. Tổng dãy số (THTA Đà Nẵng 2022)

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

Cho 2 số nguyên dương \(n, k\). Hãy tính tổng \(S\) là các số chia hết cho \(k\) trong đoạn từ \(1\) đến \(n\).

Ví dụ: \(n = 20, k = 5\) thì tổng \(S = 5 + 10 + 15 + 20 = 50\)

Yêu cầu: Cho 2 số nguyên dương \(n, k\), hãy tìm và in ra giá trị \(S\).

Input

  • Dữ liệu nhập vào từ bàn phím gồm hai dòng:
    • Dòng thứ nhất chứa tự nhiên \(n\) \((n \leq 1.000.000.000)\)
    • Dòng thứ hai chứa tự nhiên \(k\) \((k \leq 10)\)

Output

  • In ra màn hình một số \(S\) duy nhất là tổng các số chia hết cho \(k\) trong đoạn từ \(1\) đến \(n\).

Example

Test 1

Input
20
3
Output
63
Note

Tổng \(S = 3 + 6 + 9 + 12 + 15 + 18 = 63\)

Test 2

Input
14
2
Output
56
Note

Tổng \(S = 2 + 4 + 6 + 8 + 10 + 12 + 14 = 56\)

14. Đếm số ký tự (THTA Đà Nẵng 2022)

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

Bạn viết dòng chữ "HOI THI TIN HOC TRE CAP THANH PHO" lặp lại nhiều lần thành dãy ký tự liên tiếp như sau:

HOITHITINHOCTRECAPTHANHPHOHOITHITINHOCTRECAPTHANHPHOHOITHITIN...

Yêu cầu: Cho số tự nhiên \(n\) và ký tự \(ch\) in hoa bất kỳ, đếm xem từ ký tự thứ nhất đến ký tự thứ \(n\) có bao nhiêu ký tự \(ch\).

Ví dụ: \(n = 40\), \(ch =\) O, trong 40 ký tự đầu tiên của dãy có \(5\) ký tự O:

HOITHITINHOCTRECAPTHANHPHOHOITHITINHOCTRECAPTHANHPHOHOITHITIN...

Input

  • Dữ liệu nhập vào từ bàn phím gồm hai dòng:
    • Dòng thứ nhất chứa tự nhiên \(n\) \((n \leq 10.000.000)\)
    • Dòng thứ hai chứa ký tự \(ch\) (ký tự in hoa)

Output

  • In ra màn hình một số duy nhất là số lượng ký tự \(ch\) trong \(n\) ký tự đầu tiên của dãy ký tự.

Example

Test 1

Input
40
O
Output
5
Note

HOITHITINHOCTRECAPTHANHPHOHOITHITINHOCTR — trong 40 ký tự đầu có 5 ký tự O.

Test 2

Input
30
L
Output
0
Note

Trong dãy ký tự không chứa ký tự L nào.

15. Tam giác số (THTA Đà Nẵng 2022)

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

Cho tam giác số như sau:

Hàng 1: 1
Hàng 2: 2 3 4
Hàng 3: 5 6 7 8 9
Hàng 4: 10 11 12 13 14 15 16
......

Yêu cầu: Cho số nguyên dương \(n\), hãy in ra \(S\) là tổng các số trên hàng thứ \(n\) của tam giác số đã cho.

Input

  • Dữ liệu nhập vào từ bàn phím gồm một số tự nhiên \(n\) (\(n \leq 10.000.000\)).

Output

  • In ra màn hình một số duy nhất \(S\) là tổng các số trên hàng thứ \(n\) của tam giác số.

Example

Test 1

Input
2
Output
9
Note

Khi \(n = 2\) thì hàng thứ \(2\) có \(S = 2 + 3 + 4 = 9\).

Test 2

Input
4
Output
91
Note

Khi \(n = 4\) thì hàng thứ \(4\) có \(S = 10 + 11 + 12 + 13 + 14 + 15 + 16 = 91\).