Contest Lì xì đầu năm cho bảng A

Bộ đề bài

# Bài tập Điểm Thời gian: Giới hạn bộ nhớ
1 Bài 1 - Năm may mắn 100 (p) 1.0s 256M
2 Bài 2 - Phát lộc đầu năm 100 (p) 0.2s 256M
3 Bài 3 - Phát tài phát lộc 100 (p) 1.0s 256M
4 Bài 4 - Ngày may mắn 100 (p) 1.0s 256M
5 Bài 5 - Số chẵn lẻ đan xen lớn nhất 100 (p) 1.0s 256M
6 Bài 6 - Giải mã 100 (p) 0.25s 256M

1. Bài 1 - Năm may mắn

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

Trong quan niệm của Khang, một năm gọi là may mắn nếu nó chỉ có một chữ số khác 0.

Ví dụ: \(1\), \(10\) là năm may mắn. Biết năm nay là năm \(n\), hỏi Khang phải đợi bao năm nữa để đến năm may mắn.

Input

  • Một số tự nhiên \(n\) \((1 \le n \le 10^{15})\).

Output

  • In ra số năm Khang phải đợi để đến năm may mắn tiếp theo.

Example

Test 1

Input
4
Output
1

Test 2

Input
201
Output
99

2. Bài 2 - Phát lộc đầu năm

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

Theo phiên âm Hán Việt số 8 là bát (đọc trại là phát), số 6 là lục (đọc trại là lộc). Và vì thế số 86 đọc trại là phát lộc.

Định nghĩa: số chính phương là bình phương của một số tự nhiên. Ví dụ: 9 là số chính phương vì \(9 = 3 \cdot 3\).

Yêu cầu: Cho số tự nhiên \(n\) \((1 \leq n \leq 10^{18})\). Đếm số lượng số \(m\) có giá trị từ 1 đến \(n\) sao cho:

  • \(m\) là số chính phương
  • \(m\) chia hết cho 8 hoặc \(m\) chia hết cho 6

Input

  • Một dòng duy nhất chứa số tự nhiên \(n\) \((1 \leq n \leq 10^{18})\)

Output

  • In ra số lượng số \(m\) thỏa mãn yêu cầu đề bài

Example

Test 1

Input
100
Output
3
Note

Các số thỏa mãn là: 16 = \(4^2\), 36 = \(6^2\), 64 = \(8^2\)

3. Bài 3 - Phát tài phát lộc

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

Khang rất thích hai chữ số 8 và 6 vì anh ấy quan niệm rằng chữ số 8 là Phát còn chữ số 6 là Lộc.

Nhân dịp đầu xuân Bính Ngọ 2026, Khang dành riêng cho Team HĐK 2026 một bài tập về Phát Tài Phát Lộc như sau:

Với số khởi đầu là 86 (Phát Lộc), với mỗi lần biến đổi theo qui tắc sau:

  • Lấy số nhân cho 8 rồi cộng cho 6
  • Sau đó lấy số mod cho \(m\) \((2 \leq m \leq 100000)\)

Input

  • Dòng 1: số nguyên dương \(n\) \((1 \leq n \leq 10^{12})\)
  • Dòng 2: số nguyên dương \(m\) \((2 \leq m \leq 100000)\)

Output

In ra trên 2 dòng:

  • Dòng 1: số nhận được sau lần biến đổi thứ \(n\)
  • Dòng 2: tổng các số đã biến đổi từ lần thứ 1 đến lần biến đổi thứ \(n\)

Example

Test 1

Input
3
88866
Output
44470
50722
Note

Với \(m = 88866\), sau 3 lần biến đổi:

  • Lần 1: \(S_1 = (86 \cdot 8 + 6) \bmod 88866 = 694\)
  • Lần 2: \(S_2 = (694 \cdot 8 + 6) \bmod 88866 = 5558\)
  • Lần 3: \(S_3 = (5558 \cdot 8 + 6) \bmod 88866 = 44470\)

Test 2

Input
100
88666
Output
46322
4055392

4. Bài 4 - Ngày may mắn

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

Định nghĩa:

  • Giá trị của ngày được tính là \((\text{ngày} \cdot 2) + \text{tháng + hai chữ số cuối của năm}\). Ví dụ: ngày 1 tháng 2 năm 2026 thì giá trị của ngày là: \((1 \cdot 2) + 2 + 26 = 30\).
  • Ngày may mắn là ngày có giá trị của ngày chia hết cho \(6\).

Cho một ngày tháng năm, hãy tính số lượng ngày may mắn từ ngày 1 tháng 1 năm 1 đến ngày tháng năm cho trước.

Lưu ý: Năm nhuận được tính theo lịch Gregory hiện tại:

  • Năm nhuận là 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\)
  • Các năm nhuận thì tháng 2 có 29 ngày

Input

  • Một dòng duy nhất chứa 3 số nguyên dương \(ngày\), \(tháng\), \(năm\)
  • Dữ liệu đảm bảo là ngày tháng năm hợp lệ
  • \(1 \leq năm \leq 10^{14}\)

Output

  • In ra số lượng ngày may mắn tính từ ngày 1 tháng 1 năm 1 đến ngày tháng năm được cho

Example

Test 1

Input
31 12 100
Output
6092

5. Bài 5 - Số chẵn lẻ đan xen lớn 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 nghĩa: Số chẵn lẻ đan xen là số tự nhiên mà 2 chữ số liên tiếp trong số đó không cùng chẵn hoặc không cùng lẻ. Mặc định số một chữ số là số chẵn lẻ đan xen.

Cho số tự nhiên \(n\), hãy tìm số tự nhiên \(m\) lớn nhất không vượt quá \(n\) là số chẵn lẻ đan xen.

Input

  • Một số tự nhiên \(n\) \((n \leq 10^{100})\)

Output

  • In ra số \(m\) thỏa mãn đề bài

Example

Test 1

Input
11
Output
10
Note

Số 10 là số chẵn lẻ đan xen vì chữ số 1 là lẻ và chữ số 0 là chẵn.
Đây là số chẵn lẻ đan xen lớn nhất không vượt quá 11.

6. Bài 6 - Giải mã

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

Cho một xâu s chỉ chứa các kí tự tiếng Anh in thường từ 'a' đến 'z'. Độ dài xâu s không vượt quá \(10^5\).

Thực hiện mã hóa xâu s thành xâu t như sau:

  • Ban đầu xâu t là rỗng
  • Đưa một kí tự của xâu s vào cuối xâu t và thực hiện đảo xâu t. Nếu xâu t hiện tại có độ dài là chẵn thì đảo nửa trái xâu t và nửa phải xâu t (cắt nửa trái xâu t rồi đảo, cắt nửa phải xâu t rồi đảo, xong ghép 2 phần đảo thành xâu t mới). Các kí tự của xâu s đưa lần lượt vào xâu t như vậy.

Input

  • Một dòng duy nhất chứa xâu t đã được mã hóa (độ dài không quá \(10^5\))
  • Xâu t chỉ chứa các kí tự in thường từ 'a' đến 'z'

Output

  • In ra một dòng duy nhất là xâu s ban đầu.

Example

Test 1

Input
akjshjdosjksjkoka
Output
hkjjsodsjkokkasja