You are on page 1of 3

SỞ GIÁO DỤC & ĐÀO TẠO HẢI PHÒNG ĐỀ THI CHỌN HSG CẤP TRƯỜNG

TRƯỜNG THPT ĐỒ SƠN NĂM HỌC 2019-2020


ĐỀ CHÍNH THỨC Môn: Tin học lập trình - Khối 12
Thời gian làm bài:180 phút;
(Đề thi gồm 02 trang)
(Thí sinh không được sử dụng tài liệu)

TỔNG QUAN BÀI THI


Đề thi gồm 04 bài

Tên file Tên file dữ Tên file dữ Thời gian Bộ nhớ cho
Bài Điểm
nguồn nộp liệu vào liệu ra chạy phép
Bài 1 Bai1.* Bai1.inp Bai1.out 1 giây 1024 MB 6.0
Bài 2 Bai2.* Bai2.inp Bai2.out 1 giây 1024 MB 6.0
Bài 3 Bai3.* Bai3.out Bai3.out 1 giây 1024 MB 9.0
Bài 4 Bai4.* Bai4.out Bai4.out 1 giây 1024 MB 9.0
Chú ý: Học sinh không sử dụng đường dẫn trong câu lệnh đọc file dữ liệu vào và ghi file dữ liệu ra. Dấu *
được thay thế bởi PAS, CPP hoặc PY của ngôn ngữ lập trình được sử dụng tương ứng là Pascal, C++ hoặc
Python.
Hãy lập trình giải những bài toán sau:

Bài 1. Chuẩn xâu.


Ban Q được giao soạn thảo một văn bản, do mới làm quen nên chưa nắm được quy ước khi gõ văn bản nên
bạn gõ tất cả văn bản bằng chữ thường do vậy khi nộp không được chấp nhận và được yêu cầu sửa lại cho
đúng. Biết rằng đầu câu hoặc sau dấu kết thúc câu thì phải viết hoa. Câu cuối cùng phải có dấu “.” Và xâu ít
nhất phải có một chữ cái. (dấu kết thúc câu gồm: “!”; “.”; “?”)
Yêu cầu: Em hãy giúp Q sửa lại văn bản đó.
Input. BAI1.INP
- Dòng duy nhất gồm các kí tự S ∈' a' . .' z ' ; ' ! ' ; ' .' ; ' ? ' ¿ ;
Output: Ghi ra BAI1.OUT Gồm hai dòng
- Dòng 1. Xâu kết quả; Nếu xâu rỗng thì ghi “#”.
Ví dụ:
BAI1.INP BAI1.OUT
abcd.abcd,abcd Abcd.Abcd,abcd.
abcd!ebc?def.ghijk Abcd!Ebc?Def.Ghijk.
????????????????a A.
??.??!!!
Bài 2. Bé Minh Anh được mẹ mua cho rất nhiều đồ chơi hình chữ nhật có kích thước a,b (1 ≤ a ,b ≤ 103 ). Vì mới
học về chu vi và tính diện tích nên bé muốn tính diện tích mỗi đồ chơi cùng số lượng điện tích cũa mỗi hình
tính được. Vì số lượng rất nhiều nên việc phân loại tính toán rất lâu. Em hãy lập trình giúp bé, khi cần bé có thể
trả lời được ngay số lượng diện tích S bất kỳ khi được hỏi và đưa ra hình có cạnh chu vi lớn nhất.
Yêu cầu: Bạn hãy giúp Bé Minh Anh giải quyết bài toán trên.
Dữ liệu: Vào từ file văn bản BAI2.INP gồm:
- Dòng thứ nhất chứa một số nguyên dương N ;
- N dòng tiếp theo mỗi dòng ghi 2 số a i , bi (1 ≤ i≤ n) cách nhau một khoảng trống.
Kết quả: Ghi ra file văn bản BAI2.OUT hai số nguyên là số tìm được cùng với tổng các chữ số của nó cách
nhau một dấu cách trống.
Ví dụ:
BAI2.INP BAI2.OUT Giải thích
6 20 4 24 3 2 → HCN ( 3 ×2 ) ; Chu vi=10
3 2 1 6 → HCN (1 ×6) ;Chu vi=14
1 6 2 10 → HCN ( 2×10); Chu vi=24
2 10 10 2 → HCN (10 × 2); Chu vi=24
10 2 5 4 → HCN (5 × 4); Chu vi=18
5 4 4 5 → HCN ( 4 ×5); Chu vi=18
4 5
Vậy có 4 hình S=20 ,Chu vi Max=24
Ràng buộc: - 80% subtask ( 10 ≤ ai ≤100.000 .000 ) ; N ≤1000 ;

- 20% subtask ( a i ≥ 10.000 ) ; N ≤ 1000.000 ;

Bài 3. Rào trang trại:


Bạn Q có một trang trại rộng, muốn rào trang trại của mình tránh các đàn gia súc phá phách. Bạn Q mua
được cọc gỗ để làm trụ và số lượng cây tre tùy ý để rào. Do cây tre được trồng tự nhiên nên khi thu mua về có
độ dài khác nhau. Khi rào thì bạn Q muốn không chặt bỏ đi bất cứ đoạn tre nào và trong bất cứ đoạn bờ rào nào
đều phải có sự hiện diện của các loại cây tre. Hãy cho biết đoạn bờ rào của bạn Q đạt độ dài bao nhiêu để các
cây tre có thể bằng đầu nhau gần nhất?
Yêu cầu: Hãy giúp bạn Q tính được chiều dài của bờ rào khi các cây tre bằng đầu nhau.
Input: BAI3.INP
- Dòng đầu gồm số N là số loại cây tre bạn Q mua (1 ≤ N ≤ 5.106)
- Dòng sau là độ dài lần lượt N cây tre. (1 ≤ N ≤ 5.106).
Các số trên một dòng của input file được ghi cách nhau bởi dấu cách.

Output: Ghi ra BAI3.OUT


- Một dòng duy nhất gồm số lượng cây tre cần có tương ứng để đáp ứng yêu cầu trên. Mỗi kết quả ngăn cách
nhau bởi dấu cách trống.
Ví dụ:
BAI3.INP BAI3.OUT
3 643
234 Gải thích: Cần 6 cây dài 2; 4 cây dài 3;3 cây
dài 4 thì đoạn bờ rào đạt chiều dài 12 mà
không phải chặt đi bất kỳ cây tre nào.
5 42 14 7 21 6
13627 Gải thích: Cần 42 cây dài 1; 14 cây dài 3;7
cây dài 4; 21 cây dài 2; 7 cây dài 6 thì đoạn
bờ rào đạt chiều dài 42 mà không phải chặt đi
bất kỳ cây tre nào.

Bài 4. Thùng hàng

Một công ty chuyên gia công các thùng hàng hình lập phương cho khách hàng có kích thước tùy ý. Hiện trong kho có N
thùng có kích thước a 1 a 2 … a N ( ∀ i : 1≤ i≤ N ). Số thứ i là số lượng thùng hàng kích thước a i. Công ty muốn giải phóng
cho diện tích kho bằng cách cho các thùng hàng đặt xếp lồng vào nhau theo kích thước to ngoài, bé trong (Thùng bé đặt
trong thùng to). Sao cho tất cả các thùng đều chứa trong nó thùng bé hơn để vận chuyển tránh xô, lắc. Hãy tính số lượng
thùng cần bù cho từng loại?
Dữ liệu: Vào từ file văn bản BAI4.INP
- Dòng 1: Chứa số nguyên dương N
- Dòng 2: Chứa dãy A( a1 , a2 , .. , aN <106 ).
Các số trên một dòng của input file được ghi cách nhau bởi dấu cách.

Kết quả: Ghi ra file văn bản BAI4.OUT


- Số lượng các thùng cần bổ sung, mỗi kích thước còn thiếu ngăn cách nhau bởi dấu cách và theo
thứ tự lớn dần của kích thước thùng.
Ví dụ:
BAI4.INP BAI4.OUT BAI4.INP BAI4.OUT
9 4484828 10 20 16 20 0 20 14 20 4
124268111 4242688444

Giải thích Giải thích


Có: Có:
4 thùng 1 Thiếu 4 thùng 1 4 thùng 2 Thiếu 20 thùng 1
4 thùng 2 Thiếu 4 thùng 2 20 thùng 4 Thiếu 16 thùng 2
6 thùng 6 Thiếu 8 thùng 3 6 thùng 6 Thiếu 20 thùng 3
8 thùng 8 Thiếu 4 thùng 4 16 thùng 8 Thiếu 0 thùng 4
Thiếu 8 thùng 5 20 thùng 1 Thiếu 20 thùng 5
Thiếu 2 thùng 6 Thiếu 14 thùng 6
Thiếu 8 thùng 7 Thiếu 20 thùng 7
Thiếu 0 thùng 8 Thiếu 4 thùng 8

----------- HẾT ----------


Giám thị không giải thích gì thêm

You might also like