TICA - Kỳ Thi TIN HỌC TRẺ GIÁNG SINH - Chiều thứ 7

CHIA KẸO – THT SƠ KHẢO LẦN 3

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 100

CHIA KẸO – THT SƠ KHẢO LẦN 3 – 2025

Mô tả bài toán

Cho N học sinh được đánh số từ 1 đến N xếp thành một vòng tròn.

M cái kẹo được phát lần lượt theo thứ tự:

1 → 2 → 3 → … → N → 1 → 2 → … (lặp lại)

Mỗi học sinh nhận 1 cái kẹo mỗi lần đến lượt.

Yêu cầu

Hãy xác định học sinh nào nhận được cái kẹo cuối cùng.


Dữ liệu vào

Gồm 2 số tự nhiên:

  • Dòng 1: số nguyên N
  • Dòng 2: số nguyên M

Dữ liệu ra

Một số tự nhiên duy nhất là số thứ tự của học sinh nhận được cái kẹo cuối cùng.


Ví dụ

Ví dụ 1

Dữ liệu

3
10

Kết quả

1

Giải thích

Thứ tự phát kẹo:

1 - 2 - 3 - 1 - 2 - 3 - 1 - 2 - 3 - 1

Học sinh số 1 nhận cái kẹo thứ 10 (cái kẹo cuối cùng).


Vòng loại bóng đá

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 100

Vòng loại bóng đá

Đề bài

Vòng loại của những giải bóng đá lớn như World Cup, Euro,… các đội được chia thành bảng, mỗi bảng gồm bốn đội. Hai trận đấu cuối cùng của mỗi bảng luôn được tổ chức cùng giờ. Vì vậy phần lớn mọi người chỉ được xem trực tiếp một trận. Tuy vậy, cũng có một số người vừa xem một trận qua tivi và đồng thời theo dõi trận thứ hai trên máy tính qua Internet.

Kết quả phỏng vấn n người của phóng viên một tờ báo thể thao cho thấy mọi người đều xem bóng đá, trong đó có p người theo dõi trực tiếp trận thứ nhất và q người theo dõi trực tiếp trận thứ hai. Hãy xác định số người cùng theo dõi một lúc cả hai trận.

Dữ liệu vào

  • Các số nguyên dương p, q, n.

Giới hạn

  • 0 ≤ p, q ≤ n ≤ 10000

Kết quả

  • Số lượng người cùng theo dõi cả hai trận.

Ví dụ

Input:

38 40 55

Output:

23
Cách nhập 3 số trên 1 dòng với scratch:


Diện tích lớn nhất (THTB Thanh Khê 2022)

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 100

Diện tích lớn nhất (THTB Thanh Khê 2022)

Cho một hình chữ nhật có chu vi là x.

Yêu cầu

Hãy tìm hai cạnh của hình chữ nhật là số tự nhiên sao cho cùng chu vi với hình chữ nhật đã cho nhưng có diện tích lớn nhất.

Dữ liệu vào

  • Một dòng chứa một số nguyên x với điều kiện:
    2 ≤ x ≤ 10¹².

Kết quả

  • Ghi ra hai số nguyên là độ dài hai cạnh của hình chữ nhật mới tìm được.
    Hai số ghi trên một dòng, số nhỏ trước, số lớn sau.
  • Nếu không tìm được hình chữ nhật thỏa mãn thì in ra -1.

Ví dụ

Ví dụ 1

Input:

10

Output:

2 3

Giới hạn

  • 80% test: kết quả có hai cạnh a, b với 1 ≤ a, b ≤ 10⁶.
  • 20% test còn lại: a, b ≤ 10¹².

Chương trình khuyến mãi kem

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 100

🍦 Kem Mát Lạnh – Chương trình khuyến mãi

🧩 Mô tả đề bài

Cửa hàng Kem Mát Lạnh đang có chương trình ưu đãi cực hấp dẫn:

Cứ đổi k que kem đã ăn sẽ được tặng 1 que kem mới 🍧

Hiện tại, bạn đang có n que kem trong tay. Mỗi ngày bạn ăn 1 que kem, sau đó bạn sẽ có thêm 1 que que trống (vỏ kem).
Cứ khi nào bạn có đủ k vỏ kem, bạn có thể đổi lấy 1 que kem mới.

Hỏi bạn có thể ăn được bao nhiêu que kem tất cả (tính cả số kem được đổi thêm) trước khi không thể đổi thêm được nữa?


📥 Input
  • Một dòng gồm hai số nguyên dương n, k
    (1 < n < 10⁵, 2 < k < 10⁵)

📤 Output
  • Một số nguyên duy nhất — tổng số que kem bạn ăn được tất cả.

💡 Ví dụ

Input

10 3

Output

14

🧠 Phân tích
  • Mỗi ngày ăn 1 que kem → có thêm 1 vỏ.
  • Cứ đủ k vỏ → đổi 1 que kem mới.
  • Lặp lại quá trình cho đến khi số vỏ < k.


🧩 Ví dụ mô phỏng
  • Bắt đầu: có 10 que kem.
  • Ăn 10 → có 10 vỏ.
  • Đổi 9 vỏ lấy 3 kem mới (dư 1 vỏ).
  • Ăn thêm 3 kem → có thêm 3 vỏ → tổng 4 vỏ.
  • Đổi 3 vỏ lấy 1 kem → còn 1 vỏ.
  • Ăn thêm 1 kem → tổng cộng ăn 14 que, còn 2 vỏ (không đủ đổi thêm).

✅ Kết quả: 14 que kem.


Cô gái và trò chơi

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 100

B. Cô gái và Trò chơi

Giới hạn thời gian: 2 giây
Giới hạn bộ nhớ: 256 MB

Cô gái rất yêu thích những bài toán liên quan đến trò chơi. Dưới đây là một trong số đó.


📘 Mô tả bài toán

hai người chơi và họ được cho một chuỗi ký tự s chỉ gồm các chữ cái Latin thường.

Hai người chơi lần lượt chơi một trò chơi với các luật sau:

  • Hai người lần lượt đi, người chơi đi trước gọi là người thứ nhất.
  • Trong mỗi lượt, người chơi được phép xóa đi đúng một ký tự bất kỳ khỏi chuỗi s.
  • Nếu trước lượt đi của mình, người chơi có thể sắp xếp lại các ký tự hiện có trong chuỗi s để tạo thành một chuỗi đối xứng (palindrome) thì người chơi đó thắng ngay lập tức.

📌 Chuỗi đối xứng (palindrome) là chuỗi đọc xuôi hay ngược đều giống nhau.

Ví dụ:

  • abba là chuỗi đối xứng.
  • abc không phải là chuỗi đối xứng.

🎯 Yêu cầu

Hãy xác định người chơi nào sẽ thắng nếu cả hai đều chơi tối ưu:

  • Người chơi đi trước (in First)
  • Hay người chơi đi sau (in Second)

📥 Dữ liệu vào

  • Gồm một dòng duy nhất chứa chuỗi s.
  • 1 ≤ |s| ≤ 1000
  • Chuỗi s chỉ gồm các chữ cái Latin thường.

📤 Dữ liệu ra

  • In ra một dòng:
    • First nếu người chơi đi trước thắng.
    • Second nếu người chơi đi sau thắng.

⚠️ In ra đúng chữ, không có dấu ngoặc kép.


🧪 Ví dụ

Ví dụ 1

Input

aba

Output

First

Ví dụ 2

Input

abca

Output

Second


Trò chơi rút thẻ 2

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 100

🎴 Trò chơi rút thẻ

📝 Mô tả bài toán

N tấm thẻ được đánh số từ 1 đến N, xếp liên tiếp theo một hàng từ trái sang phải:

1, 2, 3, ..., N-1, N

Dino chơi một trò chơi với các tấm thẻ này theo các quy tắc sau:

  • Ban đầu chưa rút thẻ nào.
  • Ở mỗi lượt, Dino phải rút đúng một tấm thẻ theo quy tắc:
    • Nếu trên hàng vẫn còn ít nhất hai tấm thẻ:
    • Nếu (số trên thẻ ngoài cùng bên trái + số thẻ đã rút)số chẵn
      → Dino rút tấm thẻ ngoài cùng bên trái.
    • Nếu (số trên thẻ ngoài cùng bên trái + số thẻ đã rút)số lẻ
      → Dino rút tấm thẻ ngoài cùng bên phải.
    • Nếu chỉ còn một tấm thẻ duy nhất, Dino rút tấm thẻ đó.
  • Sau mỗi lượt rút:
    • Giá trị trên tấm thẻ vừa rút được cộng vào tổng điểm của Dino.
    • Tấm thẻ vừa rút sẽ bị loại khỏi hàng.

Trò chơi kết thúc khi:

  • Tổng điểm của Dino lớn hơn K, hoặc
  • Dino đã rút hết toàn bộ N tấm thẻ.

🎯 Yêu cầu

Hãy xác định số lượng tấm thẻ Dino đã rút tại thời điểm trò chơi kết thúc.

  • Nếu Dino rút hết N tấm thẻ mà tổng điểm vẫn không lớn hơn K, hãy in ra 0.

⌨️ Dữ liệu vào (INPUT)

  • Một dòng chứa hai số nguyên NK
1 ≤ N ≤ 10^9
0 ≤ K ≤ 10^18

📤 Kết quả (OUTPUT)

  • In ra một số nguyên duy nhất: số lượng tấm thẻ Dino đã rút.

📌 Ví dụ

Ví dụ

Input

6 15

Diễn biến

  • Lượt 1: (1 + 0) là số lẻ → rút thẻ ngoài cùng bên phải → lấy 6 → tổng = 6
  • Lượt 2: (1 + 1) là số chẵn → rút thẻ ngoài cùng bên trái → lấy 1 → tổng = 7
  • Lượt 3: (2 + 2) là số chẵn → rút thẻ ngoài cùng bên trái → lấy 2 → tổng = 9
  • Lượt 4: (3 + 3) là số chẵn → rút thẻ ngoài cùng bên trái → lấy 3 → tổng = 12
  • Lượt 5: (4 + 4) là số chẵn → rút thẻ ngoài cùng bên trái → lấy 4 → tổng = 16 (> 15)

Output

5

Trò chơi A, B, C

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 100

Trò chơi A, B, C Cắt dãy theo chẵn lẻ

Ba người chơi A, B, C chia dãy số tự nhiên từ 1 đến N theo lượt:

  • Lượt 1 – A
  • Lượt 2 – B
  • Lượt 3 – C
  • rồi lại quay về A, B, C, …

Quy tắc chọn số ở mỗi lượt

A:

  • Nếu số lượng phần tử còn lại là lẻ, A lấy số nhỏ nhất.
  • Nếu số lượng phần tử còn lại là chẵn, A lấy số lớn nhất.

B:

  • B luôn lấy số có vị trí thứ k = ⌈số phần tử còn lại / 3⌉ (đếm từ nhỏ lên). Nếu còn 8 số, B lấy số thứ 3 nhỏ nhất.

C:

  • C lấy ngược lại A trong cùng lượt:

    • Nếu A lấy nhỏ nhất thì C lấy lớn nhất.
    • Nếu A lấy lớn nhất thì C lấy nhỏ nhất.

Quá trình tiếp tục lặp lại theo vòng A, B, C.

Yêu cầu

Cho trước N và X. Hỏi ai sẽ lấy được số X?

Input:

  • Số nguyên N và X (1 ≤ N ≤ 10^5), mỗi số trên một dòng.
  • Số nguyên X (1 ≤ X ≤ 10^5), mỗi số trên một dòng.

Output:

  • Một ký tự: A, B hoặc C – tên người chơi lấy số X.

Ví dụ

Input:

10
4

Output:

B

Giải thích:

Ban đầu dãy: 1 2 3 4 5 6 7 8 9 10

  • Lượt 1 (A): còn 10 (chẵn) → A lấy 10
  • Lượt 2 (B): còn 9 số → B lấy số thứ ⌈9/3⌉ = 3 nhỏ nhất → 3
  • Lượt 3 (C): A lấy lớn nhất nên C lấy nhỏ nhất → 1 (Còn lại 2 4 5 6 7 8 9)
  • Lượt 4 (A): còn 7 (lẻ) → A lấy nhỏ nhất → 2
  • Lượt 5 (B): còn 6 → B lấy ⌈6/3⌉ = 2 nhỏ nhất → 5
  • Lượt 6 (C): A lấy nhỏ nhất nên C lấy lớn nhất → 9 (Còn lại 4 6 7 8)
  • Lượt 7 (A): còn 4 (chẵn) → A lấy lớn nhất → 8
  • Lượt 8 (B): còn 3 → B lấy ⌈3/3⌉ = 1 nhỏ nhất → 4 (kết thúc)

Vậy kết quả là B.