HSG lớp 9 Bắc Ninh 2025-2026
UBND TỈNH BẮC NINH
SỞ GIÁO DỤC VÀ ĐÀO TẠO
ĐỀ THI CHÍNH THỨC
(Đề thi có 04 trang)
ĐỀ THI CHỌN HỌC SINH GIỎI CẤP TỈNH
Năm học 2025 - 2026
Môn: Tin học - Lớp 9
Thời gian làm bài: 150 phút (không kể thời gian phát đề)
Tổng quan bài thi
Phần tiêu đề “Tổng quan bài thi”- Thí sinh lưu các tệp chương trình vào một thư mục được đặt tên theo quy ước SBD trong ổ đĩa cứng (trong đó: SBD là số báo danh tương ứng của thí sinh, ví dụ: B01 là thư mục chứa các tệp chương trình của thí sinh có số báo danh B01).
- Thí sinh sử dụng ngôn ngữ lập trình Python hoặc C++ để giải quyết các vấn đề đặt ra đối với từng bài thi cụ thể. Các tệp chương trình và tệp dữ liệu tương ứng được đặt tên theo quy ước tại bảng sau:
| TT | Tên bài | Tên tệp chương trình | Dữ liệu vào | Kết quả ra | Điểm |
|---|---|---|---|---|---|
| 1 | Tổng ước | TONGUOC.* | TONGUOC.INP | TONGUOC.OUT | 6,0 |
| 2 | Nguyên tố | NGUYENTO.* | NGUYENTO.INP | NGUYENTO.OUT | 6,0 |
| 3 | Đối xứng | DOIXUNG.* | DOIXUNG.INP | DOIXUNG.OUT | 4,0 |
| 4 | Xa nhất | XANHAT.* | XANHAT.INP | XANHAT.OUT | 4,0 |
Chú ý: Dấu * được thay thế bởi py hoặc cpp của ngôn ngữ lập trình được sử dụng tương ứng là Python hoặc C++.
Bài 1. Tổng ước (6,0 điểm)
Phần tiêu đề “Bài 1. Tổng ước (6,0 điểm)”Cho 3 số nguyên dương a, b, c (a, b, c ≤ 10¹²). Gọi T_a là tổng các ước số dương của số a; T_b là tổng các ước số dương của số b; T_c là tổng các ước số dương của số c.
Yêu cầu: Tìm giá trị lớn nhất trong 3 số T_a, T_b, T_c.
Dữ liệu: Đọc từ tệp văn bản TONGUOC.INP gồm 3 số a, b, c (a, b, c ≤ 10¹²) cách nhau bởi
dấu cách.
Kết quả: Ghi ra tệp văn bản TONGUOC.OUT một số duy nhất là kết quả tìm được.
Ví dụ:
| TONGUOC.INP | TONGUOC.OUT | Giải thích |
|---|---|---|
8 13 10 | 18 | Tổng các ước dương của 8 là 15 Tổng các ước dương của 13 là 14 Tổng các ước dương của 10 là 18 → Tổng ước lớn nhất là 18 |
Giới hạn:
- Subtask 1: có 70% test với a, b, c ≤ 10⁶;
- Subtask 2: có 30% test với a, b, c ≤ 10¹².
Bài 2. Nguyên tố (6,0 điểm)
Phần tiêu đề “Bài 2. Nguyên tố (6,0 điểm)”Số nguyên tố là số nguyên dương lớn hơn 1 và có đúng hai ước số dương là 1 và chính nó. Một số nguyên x được gọi là số nguyên tố đặc biệt nếu x là số nguyên tố và số viết ngược lại của x cũng là số nguyên tố.
Ví dụ: Số 13 là số nguyên tố đặc biệt vì 13 và 31 đều là số nguyên tố, số 23 không phải là số nguyên tố đặc biệt vì 23 là số nguyên tố nhưng 32 không phải là số nguyên tố.
Cho dãy số A có N phần tử nguyên A₁, A₂, …, A_N và một số nguyên dương Q.
Yêu cầu: Với mỗi cặp chỉ số L, R (1 ≤ L ≤ R ≤ N) trong Q truy vấn, đếm số lượng số nguyên tố đặc biệt trong đoạn con A_L, A_(L+1), …, A_R.
Dữ liệu: Đọc từ tệp văn bản NGUYENTO.INP gồm:
- Dòng 1: Ghi 2 số nguyên dương N, Q trong đó N là số phần tử của dãy số A và Q là số truy vấn (1 ≤ N ≤ 10⁶; 1 ≤ Q ≤ 10⁶);
- Dòng 2: Ghi N số nguyên A₁, A₂, …, A_N (−10⁷ ≤ Aᵢ ≤ 10⁷; i = 1, 2, .., N);
- Q dòng tiếp theo, mỗi dòng ghi hai số nguyên dương L, R (1 ≤ L ≤ R ≤ N).
Kết quả: Ghi ra tệp văn bản NGUYENTO.OUT gồm Q dòng, mỗi dòng ghi kết quả tìm được
tương ứng với một cặp chỉ số L, R trong tệp dữ liệu vào.
Lưu ý: Các số trên cùng một dòng trong các tệp dữ liệu cách nhau bởi dấu cách.
Ví dụ:
| NGUYENTO.INP | NGUYENTO.OUT |
|---|---|
8 38 3 25 7 -5 13 2 -201 32 66 8 | 132 |
Giới hạn:
- Subtask 1: Có 40% test với Q = 1; 1 ≤ N ≤ 10³;
- Subtask 2: Có 30% test với Q = 1; 1 ≤ N ≤ 10⁶; 1 ≤ Aᵢ ≤ 10⁶; i = 1, 2, .., N;
- Subtask 3: Có 30% test với Q ≤ 10⁶; 1 ≤ N ≤ 10⁶; Aᵢ không có ràng buộc gì thêm.
Bài 3. Đối xứng (4,0 điểm)
Phần tiêu đề “Bài 3. Đối xứng (4,0 điểm)”Cho xâu ký tự S chỉ gồm các kí tự in hoa, in thường, chữ số. Xâu con là xâu được lấy ra từ xâu S một số ký tự liên tiếp. Xâu S cũng được coi là xâu con của chính nó. Một xâu là đối xứng nếu đọc từ phải sang trái cũng thu được kết quả giống như đọc từ trái sang phải.
Ví dụ: Các xâu “madam”, “IOI”, “aba6aba” là các xâu đối xứng, các xâu “Caab”, “92328”, “abda” là các xâu không đối xứng.
Yêu cầu: Cho xâu S có độ dài không quá 10⁴ kí tự chỉ gồm các kí tự in hoa, in thường, chữ số, tìm độ dài xâu con đối xứng dài nhất trong xâu S.
Dữ liệu: Đọc từ tệp văn bản DOIXUNG.INP chứa xâu ký tự S.
Kết quả: Ghi ra tệp văn bản DOIXUNG.OUT một số là kết quả cần tìm.
Ví dụ:
| DOIXUNG.INP | DOIXUNG.OUT | Giải thích |
|---|---|---|
Caaba1ababa | 7 | Xâu con đối xứng dài nhất là xâu aba1aba có độ dài 7 |
Giới hạn:
- Subtask 1: có 70% test với xâu S có không quá 500 kí tự;
- Subtask 2: có 30% test không có ràng buộc gì thêm.
Bài 4. Xa nhất (4,0 điểm)
Phần tiêu đề “Bài 4. Xa nhất (4,0 điểm)”Cuộc thi Robocon 2030 dự kiến tổ chức cuộc thi nhảy xa trên cọc cho các chiến binh rô bốt. Ban tổ chức cuộc thi quy định luật chơi được mô tả như sau:
Trên sa bàn có N cọc được sắp xếp trên một đường thẳng, các cọc được đánh số từ trái sang phải theo thứ tự từ 1 đến N. Khoảng cách giữa các cọc là bằng nhau. Cọc thứ i có chiều cao là Aᵢ. Ban tổ chức cho trước một số nguyên P không âm làm điều kiện ràng buộc giữa chiều cao của cọc đích và chiều cao của cọc xuất phát trong luật chơi. Mỗi Rô bốt khi tham gia cuộc thi được thực hiện một bước nhảy.
Bước nhảy của rô bốt là 1 lần nhảy từ cọc xuất phát i bất kì đến cọc đích j thỏa mãn các điều kiện:
- 1 ≤ i ≤ j ≤ N;
- Aⱼ − Aᵢ ≥ P;
Khi đó j − i gọi là độ dài của bước nhảy. Bước nhảy xa nhất là bước nhảy có độ dài lớn nhất. Các rô bốt có bước nhảy xa nhất được tham gia vòng chung kết của cuộc thi.
Ví dụ: Sa bàn với 6 cọc có chiều cao các cọc tương ứng A = (4, 3, 7, 2, 6, 4), với P = 3 ta có các bước nhảy thỏa mãn là:
- Rô bốt nhảy từ cọc 1 sang cọc 3 có độ dài bước nhảy bằng 2;
- Rô bốt nhảy từ cọc 2 sang cọc 3 có độ dài bước nhảy bằng 1;
- Rô bốt nhảy từ cọc 2 sang cọc 5 có độ dài bước nhảy bằng 3;
→ Bước nhảy xa nhất có độ dài là 3.
Yêu cầu: Tìm độ dài bước nhảy xa nhất mà rô bốt có thể đạt được trong cuộc thi trên.
Dữ liệu: Đọc từ tệp văn bản XANHAT.INP có cấu trúc như sau:
- Dòng 1: Ghi 2 số nguyên N và P (1 ≤ N ≤ 10⁶; 0 ≤ P ≤ 10⁹);
- Dòng 2: Ghi N số nguyên A₁, A₂, …, A_N (0 ≤ Aᵢ ≤ 10⁹; i = 1, 2, .., N).
Kết quả: Ghi ra tệp văn bản XANHAT.OUT gồm một số nguyên dương duy nhất là độ dài bước
nhảy xa nhất tìm được. Nếu không có bước nhảy nào thỏa mãn thì ghi kết quả bằng 0.
Ví dụ:
| XANHAT.INP | XANHAT.OUT |
|---|---|
6 34 3 7 2 6 4 | 3 |
7 215 2 7 10 1 8 3 | 4 |
Giới hạn:
- Subtask 1: có 60% test với N ≤ 2000;
- Subtask 2: có 40% test với N ≤ 10⁶.
- Thí sinh không được sử dụng tài liệu.
- Giám thị không giải thích gì thêm.