HSG lớp 9 Quảng Nam 2019-2020
SỞ GIÁO DỤC VÀ ĐÀO TẠO
QUẢNG NAM
ĐỀ CHÍNH THỨC
(Đề thi gồm 04 trang)
KỲ THI HỌC SINH GIỎI LỚP 9 CẤP TỈNH
Năm học 2019 - 2020
Môn thi: Tin học - Ngày thi: 10/6/2020
Thời gian: 150 phút (không kể thời gian giao đề)
Tổng quan về đề thi
Phần tiêu đề “Tổng quan về đề thi”| Tên bài | Tên file chương trình | Dữ liệu vào | Dữ liệu ra |
|---|---|---|---|
| Bài 1: Trực nhật | TN.* |
TN.INP |
TN.OUT |
| Bài 2: Diện tích hình chữ nhật | HCN.* |
HCN.INP |
HCN.OUT |
| Bài 3: Xin chào | XINCHAO.* |
XINCHAO.INP |
XINCHAO.OUT |
| Bài 4: Mua quà lưu niệm | MUAQUA.* |
MUAQUA.INP |
MUAQUA.OUT |
Dấu * được thay thế bởi PAS hoặc CPP của ngôn ngữ lập trình được sử dụng
tương ứng là Free Pascal hoặc C++.
Bài 1. Trực nhật (5 điểm)
Phần tiêu đề “Bài 1. Trực nhật (5 điểm)”An và Bình là đôi bạn thân học chung lớp. Trong lớp học thì tất cả các bạn đều phải trực nhật và cứ sau một số x ngày nhất định thì bạn đó mới phải trực nhật lại. Biết rằng, ban đầu An và Bình đều trực nhật ngày đầu tiên, và 2 bạn muốn biết sau bao nhiêu ngày thì 2 bạn lại trực nhật chung với nhau và khi đó mỗi bạn đã trực nhật bao nhiêu lần.
Yêu cầu: Em hãy lập trình để trả lời câu hỏi của An và Bình nhé.
Dữ liệu vào: đọc từ file TN.INP gồm 1 dòng chứa 2 số nguyên x₁, x₂
(2 ≤ x₁, x₂ ≤ 10⁹) lần lượt là số ngày mà sau đó An và Bình mới phải trực nhật lại.
Dữ liệu ra: ghi ra file TN.OUT gồm:
- Dòng đầu tiên ghi ra số ngày An và Bình cùng nhau trực nhật lại;
- Dòng thứ 2 chứa 2 số lần lượt là số lần một bạn đã trực nhật cho tới lúc 2 bạn cùng trực nhật.
Ví dụ:
| TN.INP | TN.OUT |
|---|---|
6 4 |
122 3 |
Bài 2. Diện tích hình chữ nhật (5 điểm)
Phần tiêu đề “Bài 2. Diện tích hình chữ nhật (5 điểm)”Là một học sinh thông minh, nên An luôn tìm được những cách giải hay cho những bài toán lạ. Và bạn ấy vừa giải quyết xong bài toán tìm diện tích chung của 2 hình chữ nhật, tuy nhiên, An lại gặp khó khăn với việc sử dụng ngôn ngữ lập trình để giải quyết bài toán này. Cụ thể bài toán như sau: Cho 2 hình chữ nhật trên mặt phẳng 2D với tọa độ đỉnh trái dưới và đỉnh phải trên, tìm diện tích phần chung của 2 hình chữ nhật này?
Yêu cầu: Em hãy lập trình để giúp bạn An giải quyết bài toán này nhé.
Dữ liệu vào: đọc từ file HCN.INP gồm:
- Dòng 1 ghi 4 số nguyên x₁, y₁, x₂, y₂ tương ứng là tọa độ đỉnh trái dưới và đỉnh phải trên của hình chữ nhật thứ nhất;
- Dòng 2 ghi 4 số nguyên u₁, v₁, u₂, v₂ tương ứng là tọa độ đỉnh trái dưới và đỉnh phải trên của hình chữ nhật thứ hai;
Trong đó: x₁ < x₂, y₁ < y₂, u₁ < u₂, v₁ < v₂ và (−10⁹ < x₁, y₁, x₂, y₂, u₁, v₁, u₂, v₂ < 10⁹).
Dữ liệu ra: ghi ra file HCN.OUT số nguyên duy nhất là diện tích phần chung
của 2 hình chữ nhật.
Ví dụ:
| HCN.INP | HCN.OUT |
|---|---|
1 1 3 32 0 4 4 |
2 |
Bài 3. Xin chào (5 điểm)
Phần tiêu đề “Bài 3. Xin chào (5 điểm)”An là người thích chat với bạn bè trên Internet. Cậu ấy đã lập ra một phòng chat với điều kiện rằng trước khi vào phòng chat, mọi người phải chào hỏi nhau trước.
Một câu chào được định nghĩa rằng, câu chào đó phải là một xâu kí tự, chỉ gồm các chữ cái, không chứa kí tự trắng, sao cho khi xóa đi một số chữ cái, nó sẽ trở thành một xâu từ khóa Key cho trước, tất nhiên là sẽ không được phép tráo đổi vị trí các chữ cái, mà chỉ được xóa bớt một số chữ cái.
Ví dụ: Với từ khóa key là “xinchao”; khi Bình muốn vào phòng chat, Bình gõ “choxiancaihao” thì hệ thống sẽ xem xét xâu này và sẽ tự động loại bỏ các chữ cái để trở thành từ “xinchao”. Như vậy Bình được vào phòng chat.
Nhưng khi Bình gõ “choxian”, hệ thống không thể làm cách nào xóa bớt chữ cái để trở thành từ “xinchao” được. Như vậy, Bình không được vào phòng chat.
Yêu cầu: Cho từ khóa Key và N câu chào, em hãy xác định xem câu chào nào được chấp nhận?
Dữ liệu vào: Đọc từ file XINCHAO.INP gồm:
- Dòng thứ nhất chứa số nguyên dương N (N ≤ 100);
- Dòng thứ hai chứa từ khóa Key (có độ dài ≤ 10⁴);
- N dòng tiếp theo, mỗi dòng chứa xâu chữ cái mà Bình định gõ (có độ dài ≤ 10⁶).
Dữ liệu ra: Ghi ra file XINCHAO.OUT gồm N dòng, mỗi dòng tương ứng với câu
chào, câu chào được đồng ý thì xuất “YES”, nếu không đồng ý thì xuất “NO” (viết hoa
và không chứa dấu ngoặc kép).
Ví dụ:
| XINCHAO.INP | XINCHAO.OUT |
|---|---|
4helloahhellllloouhlelohelhcludooHelhcLudoo |
YESNOYESNO |
Ràng buộc:
- Có 60% số test ứng với 60% số điểm có xâu chữ cái ≤ 10⁴;
- Có 40% số test còn lại ứng với 40% số điểm có xâu chữ cái trong khoảng (10⁴, 10⁶].
Bài 4. Mua quà lưu niệm (5 điểm)
Phần tiêu đề “Bài 4. Mua quà lưu niệm (5 điểm)”An là một học sinh tham dự cuộc thi Học sinh giỏi lớp 9. Sau khi thi xong, An cùng các bạn được nhà trường đưa đi tham quan nhiều danh lam thắng cảnh và cửa hàng lưu niệm tại thành phố Tam Kỳ. An muốn mua quà lưu niệm tặng các bạn thân ở nhà.
Khi đến một cửa hàng lưu niệm ở trung tâm thành phố, An được chủ cửa hàng giới thiệu giá của n (3 ≤ n ≤ 10⁵) món quà, món quà thứ i (1 ≤ i ≤ n) có giá tiền là aᵢ (1 ≤ aᵢ ≤ 10⁴). An muốn chọn mua m (1 ≤ m ≤ n) món quà sao cho chênh lệch giá tiền giữa món quà có giá trị lớn nhất và nhỏ nhất là ít nhất có thể.
Yêu cầu: Em hãy lập trình giúp An mua các món quà tặng thỏa mãn yêu cầu.
Dữ liệu vào: Đọc từ file MUAQUA.INP, gồm 02 dòng:
- Dòng 1: ghi hai số nguyên m và n, cách nhau bởi dấu cách;
- Dòng 2: ghi n số nguyên a₁, a₂, …, aₙ và đặt cách nhau bởi dấu cách.
Dữ liệu ra: Ghi ra file MUAQUA.OUT, gồm 01 dòng ghi duy nhất số k là độ chênh
lệch giá trị nhỏ nhất cần tìm.
Ví dụ:
| MUAQUA.INP | MUAQUA.OUT | Giải thích |
|---|---|---|
4 610 12 10 5 7 22 |
5 |
An có thể mua các món quà có giá trị: 10, 12, 10, 7. |
Ràng buộc:
- Có 50% số test ứng với 50% số điểm có 0 < N, M ≤ 10⁵; aᵢ ≤ 10³;
- Có 30% số test ứng với 30% số điểm có 0 < N, M ≤ 10⁵; 10³ < aᵢ ≤ 10⁴.
- Thí sinh không được sử dụng tài liệu.
- Cán bộ coi thi không giải thích gì thêm.