JOI 2023 - Vòng loại 1 - Đợt 3

Bộ đề bài

# Bài tập Điểm Thời gian: Giới hạn bộ nhớ
1 JOI 2023 - Two-digit Integer 100 (p) 2.0s 1G
2 JOI 2023 - November 100 (p) 2.0s 1G
3 JOI 2023 - JOI Editor 100 (p) 2.0s 1G
4 JOI 2023 - Marathon Race 100 (p) 2.0s 1G

1. JOI 2023 - Two-digit Integer

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

Cho hai chữ số \(A, B\). Hãy in ra số nguyên dương có hai chữ số, với chữ số hàng chục là \(A\) và chữ số hàng đơn vị là \(B\).

Dữ liệu vào

Dữ liệu vào có dạng:

A
B

Dữ liệu ra

In ra số nguyên dương có hai chữ số, với chữ số hàng chục là \(A\) và chữ số hàng đơn vị là \(B\).

Ràng buộc

  • \(A\) là một trong các chữ số \(1, 2, 3, 4, 5, 6, 7, 8, 9\).
  • \(B\) là một trong các chữ số \(0, 1, 2, 3, 4, 5, 6, 7, 8, 9\).

Ví dụ

Ví dụ 1

Input
2
2
Output
22
Giải thích

Số nguyên dương có hai chữ số, với chữ số hàng chục là \(2\) và chữ số hàng đơn vị là \(2\), là \(22\). Vì vậy, in ra \(22\).

Ví dụ 2

Input
1
0
Output
10
Giải thích

Số nguyên dương có hai chữ số, với chữ số hàng chục là \(1\) và chữ số hàng đơn vị là \(0\), là \(10\). Vì vậy, in ra \(10\).

Ví dụ 3

Input
1
9
Output
19

Nguồn

Bản dịch tiếng Việt từ đề gốc tiếng Nhật của Ủy ban Olympic Tin học Nhật Bản. Đề gốc và bản dịch được cung cấp theo giấy phép CC BY-SA 4.0.

2. JOI 2023 - November

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

Cho hai số nguyên \(A, B\). Nếu ngày cách ngày \(A\) tháng \(11\) năm \(2022\) đúng \(B\) tuần về sau vẫn thuộc tháng \(11\) năm \(2022\), hãy in ra \(1\); ngược lại, hãy in ra \(0\).

Tháng \(11\) năm \(2022\)\(30\) ngày, từ ngày \(1\) tháng \(11\) đến ngày \(30\) tháng \(11\) năm \(2022\). Ngày cách một ngày cho trước \(x\) tuần về sau là ngày cách ngày đó \(7 \times x\) ngày về sau.

Dữ liệu vào

Dữ liệu vào có dạng:

A
B

Dữ liệu ra

In ra \(1\) nếu ngày cách ngày \(A\) tháng \(11\) năm \(2022\) đúng \(B\) tuần về sau vẫn thuộc tháng \(11\) năm \(2022\); ngược lại, in ra \(0\).

Ràng buộc

  • \(1 \le A \le 30\).
  • \(1 \le B \le 5\).
  • Tất cả các giá trị trong dữ liệu vào đều là số nguyên.

Ví dụ

Ví dụ 1

Input
19
1
Output
1
Giải thích

Một tuần sau ngày \(19\) tháng \(11\) năm \(2022\) là ngày \(26\) tháng \(11\) năm \(2022\). Ngày này thuộc tháng \(11\) năm \(2022\), nên in ra \(1\).

Ví dụ 2

Input
3
4
Output
0
Giải thích

Bốn tuần sau ngày \(3\) tháng \(11\) năm \(2022\) là ngày \(1\) tháng \(12\) năm \(2022\). Ngày này không thuộc tháng \(11\) năm \(2022\), nên in ra \(0\).

Ví dụ 3

Input
8
3
Output
1

Nguồn

Bản dịch tiếng Việt từ đề gốc tiếng Nhật của Ủy ban Olympic Tin học Nhật Bản. Đề gốc và bản dịch được cung cấp theo giấy phép CC BY-SA 4.0.

3. JOI 2023 - JOI Editor

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

Công ty JOI, vốn nổi tiếng với những phát minh kỳ lạ, gần đây đã phát triển một trình soạn thảo văn bản có tên JOI Editor. Trình soạn thảo này được điều khiển bằng ba phím j, o, i.

Khi nhấn một trong ba phím j, o, i, chữ cái tiếng Anh viết thường ghi trên phím đó được nhập vào. Tuy nhiên, ngay khi có hai chữ cái viết thường giống nhau nằm cạnh nhau, cả hai chữ cái lập tức được thay bằng các chữ cái viết hoa tương ứng. Cụ thể, jj được thay bằng JJ, oo được thay bằng OO, và ii được thay bằng II.

Chẳng hạn, nếu nhấn lần lượt các phím j, o, o, o, i, thì ngay sau khi nhấn ba phím đầu tiên j, o, o, ký tự thứ \(2\) và thứ \(3\) tạo thành oo. Vì hai chữ cái viết thường giống nhau nằm cạnh nhau, chúng lập tức được thay bằng OO. Xâu cuối cùng trong JOI Editor là jOOoi. Lưu ý rằng kết quả không phải là joOOi hay jOOOi.

Cho xâu \(S\) có độ dài \(N\), mỗi ký tự của \(S\)j, o hoặc i. Bạn nhấn phím \(N\) lần, trong đó ký tự thứ \(i\) của \(S\) (\(1 \le i \le N\)) cho biết phím được nhấn ở lần thứ \(i\). Hãy in ra xâu cuối cùng trong JOI Editor.

Dữ liệu vào

Dữ liệu vào có dạng:

N
S

Dữ liệu ra

In ra xâu cuối cùng trong JOI Editor.

Ràng buộc

  • \(1 \le N \le 100\).
  • \(S\) là xâu có độ dài \(N\).
  • Mỗi ký tự của \(S\)j, o hoặc i.
  • \(N\) là số nguyên.

Ví dụ

Ví dụ 1

Input
6
jjoiii
Output
JJoIIi
Giải thích
  1. Ở lần thứ \(1\), nhấn phím j. Xâu trong JOI Editor trở thành j.

  2. Ở lần thứ \(2\), nhấn phím j. Xâu trở thành jj. Vì hai chữ cái viết thường giống nhau nằm cạnh nhau, jj được thay bằng JJ, nên xâu trong JOI Editor trở thành JJ.

  3. Ở lần thứ \(3\), nhấn phím o. Xâu trong JOI Editor trở thành JJo.

  4. Ở lần thứ \(4\), nhấn phím i. Xâu trong JOI Editor trở thành JJoi.

  5. Ở lần thứ \(5\), nhấn phím i. Xâu trở thành JJoii. Vì hai chữ cái viết thường giống nhau nằm cạnh nhau, ii được thay bằng II, nên xâu trong JOI Editor trở thành JJoII.

  6. Ở lần thứ \(6\), nhấn phím i. Xâu trong JOI Editor trở thành JJoIIi.

Xâu cuối cùng là JJoIIi, nên in ra JJoIIi.

Ví dụ 2

Input
6
joijoi
Output
joijoi
Giải thích

Trong ví dụ này, không có phép thay thế nào xảy ra. Xâu cuối cùng trong JOI Editor là joijoi, nên in ra joijoi.

Ví dụ 3

Input
7
ooooooo
Output
OOOOOOo

Nguồn

Bản dịch tiếng Việt từ đề gốc tiếng Nhật của Ủy ban Olympic Tin học Nhật Bản. Đề gốc và bản dịch được cung cấp theo giấy phép CC BY-SA 4.0.

4. JOI 2023 - Marathon Race

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

Trường trung học JOI có \(N\) học sinh, được đánh số từ \(1\) đến \(N\).

Tháng trước, trường tổ chức một cuộc thi marathon và tất cả học sinh đều tham gia. Thời gian hoàn thành cuộc đua của học sinh \(i\) (\(1 \le i \le N\)) là \(A_i\) phút.

Hãy tìm thứ hạng của từng học sinh trong cuộc thi. Thứ hạng của học sinh \(i\) (\(1 \le i \le N\)) được tính bằng số học sinh có thời gian hoàn thành nhỏ hơn \(A_i\) phút, cộng thêm \(1\).

Dữ liệu vào

Dữ liệu vào có dạng:

N
A_1 A_2 ... A_N

Dữ liệu ra

In ra \(N\) dòng. Dòng thứ \(i\) (\(1 \le i \le N\)) chứa thứ hạng của học sinh \(i\).

Ràng buộc

  • \(1 \le N \le 100\).
  • \(1 \le A_i \le 1000\) (\(1 \le i \le N\)).
  • Tất cả các giá trị trong dữ liệu vào đều là số nguyên.

Ví dụ

Ví dụ 1

Input
3
44 42 69
Output
2
1
3
Giải thích

Học sinh \(1\) hoàn thành trong \(44\) phút. Có \(1\) học sinh hoàn thành trong thời gian nhỏ hơn \(44\) phút, nên học sinh \(1\) xếp hạng \(2\). Vì vậy, dòng thứ \(1\) in ra \(2\).

Học sinh \(2\) hoàn thành trong \(42\) phút. Không có học sinh nào hoàn thành trong thời gian nhỏ hơn \(42\) phút, nên học sinh \(2\) xếp hạng \(1\). Vì vậy, dòng thứ \(2\) in ra \(1\).

Học sinh \(3\) hoàn thành trong \(69\) phút. Có \(2\) học sinh hoàn thành trong thời gian nhỏ hơn \(69\) phút, nên học sinh \(3\) xếp hạng \(3\). Vì vậy, dòng thứ \(3\) in ra \(3\).

Ví dụ 2

Input
4
40 60 40 60
Output
1
3
1
3
Giải thích

Học sinh \(1\) hoàn thành trong \(40\) phút. Không có học sinh nào hoàn thành trong thời gian nhỏ hơn \(40\) phút, nên học sinh \(1\) xếp hạng \(1\). Vì vậy, dòng thứ \(1\) in ra \(1\).

Học sinh \(2\) hoàn thành trong \(60\) phút. Có \(2\) học sinh hoàn thành trong thời gian nhỏ hơn \(60\) phút, nên học sinh \(2\) xếp hạng \(3\). Vì vậy, dòng thứ \(2\) in ra \(3\).

Học sinh \(3\) hoàn thành trong \(40\) phút. Không có học sinh nào hoàn thành trong thời gian nhỏ hơn \(40\) phút, nên học sinh \(3\) xếp hạng \(1\). Vì vậy, dòng thứ \(3\) in ra \(1\).

Học sinh \(4\) hoàn thành trong \(60\) phút. Có \(2\) học sinh hoàn thành trong thời gian nhỏ hơn \(60\) phút, nên học sinh \(4\) xếp hạng \(3\). Vì vậy, dòng thứ \(4\) in ra \(3\).

Ví dụ 3

Input
10
766 152 595 926 663 509 368 595 175 622
Output
9
1
5
10
8
4
3
5
2
7

Nguồn

Bản dịch tiếng Việt từ đề gốc tiếng Nhật của Ủy ban Olympic Tin học Nhật Bản. Đề gốc và bản dịch được cung cấp theo giấy phép CC BY-SA 4.0.