Kiểm tra chất lượng tháng 8

Bộ đề bài

# Bài tập Điểm Thời gian: Giới hạn bộ nhớ
1 Ba số trên một dòng 100 (p) 1.0s 256M
2 Mã thời gian 100 (p) 1.0s 256M
3 Mua vở và bút 100 (p) 1.0s 256M
4 Đổi phút thành giờ 100 (p) 1.0s 256M
5 Đội nào nhiều điểm hơn 100 (p) 1.0s 256M
6 Đủ chỗ ngồi 100 (p) 1.0s 256M
7 Cuộc đua của An và Bình 100 (p) 1.0s 256M
8 Mua hàng được giảm giá 200 (p) 1.0s 256M
9 Giá vé khu vui chơi 250 (p) 1.0s 256M
10 Ngày hợp lệ 300 (p) 1.0s 256M

1. Ba số trên một dòng

Đ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 \(a\), \(b\), \(c\).

Hãy in ba số trên cùng một dòng, giữa hai số liên tiếp là dấu - và sau số cuối cùng là dấu !.

Yêu cầu sử dụng các tham số sepend của câu lệnh print.

Input

  • Dòng thứ nhất chứa số nguyên \(a\).
  • Dòng thứ hai chứa số nguyên \(b\).
  • Dòng thứ ba chứa số nguyên \(c\).
  • \(0 \le a,b,c \le 1000\).

Output

  • In ba số theo dạng a-b-c!.

Example

Test 1

Input
12
5
8
Output
12-5-8!
Note

Giữa hai số liên tiếp là dấu - và sau số cuối cùng là dấu !.

Scoring

  • Subtask 1 (4 points): \(0 \le a,b,c \le 9\).
  • Subtask 2 (6 points): \(0 \le a,b,c \le 1000\).

2. Mã thời gian

Đ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 \(h\), \(m\), \(s\) lần lượt biểu diễn giờ, phút và giây.

Hãy in thời gian theo dạng h:m:s -> OK.

Không cần thêm chữ số 0 ở phía trước các số có một chữ số.

Yêu cầu vận dụng các tham số sepend của câu lệnh print.

Input

  • Dòng thứ nhất chứa số nguyên \(h\).
  • Dòng thứ hai chứa số nguyên \(m\).
  • Dòng thứ ba chứa số nguyên \(s\).
  • \(0 \le h \le 23\).
  • \(0 \le m,s \le 59\).

Output

  • In thời gian theo đúng dạng h:m:s -> OK.

Example

Test 1

Input
7
5
9
Output
7:5:9 -> OK
Note

Ba giá trị thời gian được ngăn cách bởi dấu : và phần -> OK được in tiếp trên cùng một dòng.

Scoring

  • Subtask 1 (4 points): \(m=0\)\(s=0\).
  • Subtask 2 (6 points): Không có ràng buộc bổ sung.

3. Mua vở và bút

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

An mua \(v\) quyển vở, mỗi quyển có giá \(12000\) đồng và \(b\) cây bút, mỗi cây có giá \(5000\) đồng.

Hãy tính tổng số tiền An phải trả.

Input

  • Dòng thứ nhất chứa số nguyên \(v\) là số quyển vở.
  • Dòng thứ hai chứa số nguyên \(b\) là số cây bút.
  • \(0 \le v,b \le 1000\).

Output

  • In ra tổng số tiền An phải trả.

Example

Test 1

Input
3
4
Output
56000
Note

Ba quyển vở có giá 36000 đồng và bốn cây bút có giá 20000 đồng.

Scoring

  • Subtask 1 (4 points): \(b=0\).
  • Subtask 2 (6 points): \(0 \le v,b \le 1000\).

4. Đổi phút thành giờ

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

Một chương trình học trực tuyến ghi nhận tổng thời gian học của một bạn là \(t\) phút.

Hãy đổi \(t\) phút thành số giờ và số phút còn lại.

Ví dụ, \(135\) phút tương ứng với \(2\) giờ và \(15\) phút.

Input

  • Một dòng chứa số nguyên \(t\) là tổng số phút.
  • \(0 \le t \le 10000\).

Output

  • Dòng thứ nhất in số giờ.
  • Dòng thứ hai in số phút còn lại.

Example

Test 1

Input
135
Output
2
15
Note

\(135\) phút gồm \(2\) giờ và còn lại \(15\) phút.

Scoring

  • Subtask 1 (4 points): \(0 \le t < 60\)
  • Subtask 2 (6 points): \(0 \le t \le 10000\)

5. Đội nào nhiều điểm hơn

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

Trong một cuộc thi, đội A hoàn thành \(a\) câu dễ và \(b\) câu khó. Mỗi câu dễ được \(10\) điểm, mỗi câu khó được \(25\) điểm.

Đội B hoàn thành \(c\) câu dễ và \(d\) câu khó.

Hãy kiểm tra xem tổng điểm của đội A có lớn hơn tổng điểm của đội B hay không.

Bài toán này không cần sử dụng câu lệnh if, elif, else.

Input

  • Dòng thứ nhất chứa số nguyên \(a\).
  • Dòng thứ hai chứa số nguyên \(b\).
  • Dòng thứ ba chứa số nguyên \(c\).
  • Dòng thứ tư chứa số nguyên \(d\).
  • \(0 \le a,b,c,d \le 1000\).

Output

  • In True nếu tổng điểm của đội A lớn hơn tổng điểm của đội B.
  • Ngược lại, in False.

Example

Test 1

Input
3
2
5
1
Output
True
Note

Đội A có 3 * 10 + 2 * 25 = 80 điểm. Đội B có 5 * 10 + 1 * 25 = 75 điểm.

Scoring

  • Subtask 1 (4 points): \(b=d=0\).
  • Subtask 2 (6 points): Không có ràng buộc bổ sung.

6. Đủ chỗ ngồi

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

Một chiếc xe buýt có \(k\) chỗ ngồi. Tại một trạm có \(n\) hành khách muốn lên xe.

Hãy kiểm tra xem chiếc xe có đủ chỗ ngồi cho tất cả hành khách hay không.

Input

  • Dòng thứ nhất chứa số nguyên \(n\) là số hành khách muốn lên xe.
  • Dòng thứ hai chứa số nguyên \(k\) là số chỗ ngồi của xe.
  • \(0 \le n \le 1000\).
  • \(1 \le k \le 1000\).

Output

  • In DU_CHO nếu xe có đủ chỗ ngồi cho tất cả hành khách.
  • In KHONG_DU nếu xe không đủ chỗ ngồi.

Example

Test 1

Input
35
40
Output
DU_CHO
Note

Xe có \(40\) chỗ ngồi và chỉ có \(35\) hành khách nên xe đủ chỗ cho tất cả mọi người.

Scoring

  • Subtask 1 (4 points): \(n < k\)
  • Subtask 2 (6 points): Không có ràng buộc bổ sung.

7. Cuộc đua của An và Bình

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

An chạy được \(a\) mét và Bình chạy được \(b\) mét trong cùng một khoảng thời gian.

Hãy xác định kết quả cuộc đua.

Input

  • Dòng thứ nhất chứa số nguyên \(a\) là quãng đường An chạy được.
  • Dòng thứ hai chứa số nguyên \(b\) là quãng đường Bình chạy được.
  • \(0 \le a,b \le 1000000\).

Output

  • In AN nếu An chạy được quãng đường lớn hơn Bình.
  • In BINH nếu Bình chạy được quãng đường lớn hơn An.
  • In HOA nếu hai bạn chạy được quãng đường bằng nhau.

Example

Test 1

Input
850
920
Output
BINH

Scoring

  • Subtask 1 (4 points): \(a \ne b\).
  • Subtask 2 (6 points): Không có ràng buộc bổ sung.

8. Mua hàng được giảm giá

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

Một cửa hàng bán vở với giá \(p\) đồng một quyển. An mua \(n\) quyển vở.

Cửa hàng áp dụng chương trình giảm giá theo tổng số tiền ban đầu như sau:

  • Nếu tổng tiền nhỏ hơn \(100000\) đồng: không được giảm giá.
  • Nếu tổng tiền từ \(100000\) đồng đến dưới \(200000\) đồng: được giảm \(10\%\).
  • Nếu tổng tiền từ \(200000\) đồng trở lên: được giảm \(20\%\).

Hãy tính số tiền cuối cùng An phải trả sau khi được giảm giá.

Input

  • Dòng thứ nhất chứa số nguyên \(n\) là số quyển vở An mua.
  • Dòng thứ hai chứa số nguyên \(p\) là giá của một quyển vở.
  • \(1 \le n \le 100\).
  • \(1000 \le p \le 100000\).
  • \(p\) chia hết cho \(1000\).

Output

  • In ra số tiền An phải trả sau khi áp dụng chương trình giảm giá.

Example

Test 1

Input
15
10000
Output
135000
Note

Tổng tiền ban đầu là \(15 \times 10000 = 150000\) đồng. Vì tổng tiền từ \(100000\) đồng đến dưới \(200000\) đồng nên An được giảm \(10\%\), tức là \(15000\) đồng. Số tiền phải trả là \(135000\) đồng.

Test 2

Input
5
10000
Output
50000
Note

Tổng tiền ban đầu là \(5 \times 10000 = 50000\) đồng. Vì tổng tiền nhỏ hơn \(100000\) đồng nên An không được giảm giá. Số tiền phải trả là \(50000\) đồng.

Test 3

Input
25
10000
Output
200000
Note

Tổng tiền ban đầu là \(25 \times 10000 = 250000\) đồng. Vì tổng tiền từ \(200000\) đồng trở lên nên An được giảm \(20\%\), tức là \(50000\) đồng. Số tiền phải trả là \(200000\) đồng.

Scoring

  • Subtask 1 (3 points): Tổng tiền ban đầu nhỏ hơn \(100000\) đồng.
  • Subtask 2 (3 points): Tổng tiền ban đầu nhỏ hơn \(200000\) đồng.
  • Subtask 3 (4 points): Không có ràng buộc bổ sung.

9. Giá vé khu vui chơi

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

Một khu vui chơi bán vé với giá cơ bản là \(80000\) đồng.

Giá vé được thay đổi theo tuổi của khách như sau:

  • Khách dưới 6 tuổi được miễn phí.
  • Khách từ 6 đến 15 tuổi trả một nửa giá vé cơ bản.
  • Khách từ 16 đến 59 tuổi trả nguyên giá vé cơ bản.
  • Khách từ 60 tuổi trở lên trả một nửa giá vé cơ bản.

Cho tuổi \(t\) của một khách. Hãy tính số tiền người đó phải trả.

Input

  • Một dòng chứa số nguyên \(t\) là tuổi của khách.
  • \(0 \le t \le 120\).

Output

  • In ra số tiền khách phải trả, tính theo đơn vị đồng.

Example

Test 1

Input
13
Output
40000

Scoring

  • Subtask 1 (3 points): \(0 \le t <16\).
  • Subtask 2 (3 points): \(16 \le t <60\).
  • Subtask 3 (4 points): \(0 \le t \le 120\).

10. Ngày hợp lệ

Điểm: 300 (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\), \(m\), \(y\) lần lượt là ngày, tháng và năm.

Hãy kiểm tra xem ba số đã cho có tạo thành một ngày hợp lệ hay không.

Số ngày của các tháng được quy định như sau:

  • Tháng 1, 3, 5, 7, 8, 10, 12 có 31 ngày.
  • Tháng 4, 6, 9, 11 có 30 ngày.
  • Tháng 2 có 28 ngày trong năm thường và 29 ngày trong năm nhuận.

Một năm là năm nhuận nếu:

  • Năm đó chia hết cho 400; hoặc
  • Năm đó chia hết cho 4 nhưng không chia hết cho 100.

Học sinh chỉ được sử dụng các phép so sánh và câu lệnh if, elif, else đã học. Không cần sử dụng các toán tử logic nâng cao.

Input

  • Dòng thứ nhất chứa số nguyên \(d\).
  • Dòng thứ hai chứa số nguyên \(m\).
  • Dòng thứ ba chứa số nguyên \(y\).
  • \(1 \le d \le 31\).
  • \(1 \le m \le 12\).
  • \(1 \le y \le 9999\).

Output

  • In HOP_LE nếu ngày đã cho là hợp lệ.
  • In KHONG_HOP_LE nếu ngày đã cho không hợp lệ.

Example

Test 1

Input
29
2
2024
Output
HOP_LE
Note

Năm 2024 chia hết cho 4 và không chia hết cho 100 nên là năm nhuận. Vì vậy tháng 2 năm 2024 có 29 ngày.

Scoring

  • Subtask 1 (2 points): \(m=1\).
  • Subtask 2 (2 points): \(m \ne 2\).
  • Subtask 3 (3 points): \(m=2\)\(y\) không chia hết cho 100.
  • Subtask 4 (3 points): Không có ràng buộc bổ sung.