SỞ GD – ĐT HÀ TĨNH
ĐỀ CHÍNH THỨC
KỲ THI CHỌN HỌC SINH GIỎI TỈNH
LỚP 12 THPT NĂM HỌC 2016 - 2017
Môn thi: Tin học
Thời gian làm bài 180 phút
(Đề thi có 2 trang, gồm 3 bài)
TỔNG QUAN BÀI THI
Tên bài
Bài 1
Bài 2
Bài 3
Số KFACTOR
Bố trí phòng họp
Sa mạc
Tệp chương trình Tệp dữ liệu vào
KFACTOR.PAS
HOP.PAS
SAMAC.PAS
Tệp dữ liệu ra
KFACTOR.INP KFACTOR.OUT
HOP.INP
HOP.OUT
SAMAC.INP
SAMAC.OUT
Sử dụng ngôn ngữ lập trình Pascal hãy lập chương trình giải các bài toán sau đây:
Bài 1: (6 điểm) Số KFACTOR
Cho số nguyên dương K, số nguyên dương N gọi là K-factor nếu N có thể viết được bằng
tích của các số nguyên dương bé hơn hay bằng K.
Cho số K và đoạn nguyên dương [a,b], hãy xác định có bao nhiêu số nguyên dươg Kfactor thuộc đoạn [a,b].
Dữ liệu vào từ tệp văn bản KFACTOR.INP gồm một dòng ghi 3 số nguyên dương K, a,
b; mỗi số cách nhau một dấu cách (2≤K≤105, 1≤ a ≤ b ≤ 2.109 , b – a ≤ 2. 106).
Kết quả ghi ra tệp văn bản KFACTOR.OUT chỉ gồm số nguyên dương là số số nguyên
dương K-factor thuộc đoạn [a,b].
K-factor.
Ví dụ:
KFACTOR.INP KFACTOR.OUT
Giải tích
5 30 40
4
Có 4 số 5-factor thuộc đoạn
[30,40] là:
30 = 2*3*5
32 = 2*4*4
36 = 3*3*4
40 = 2 *4*5
Bài 2: (7 điểm) Gửi thư
Vị Giám đốc công ty XYZ cần gửi một văn bản quan trọng tới một đối tác của
mình. Văn bản là một xâu S các chữ cái la tinh in thường. Để bảo mật nội dung văn bản,
ông Giám đốc gửi 2 bức thư. Bức thư thứ nhất là phần đầu Sb của xâu S, bức thư thứ 2 là
phần cuối Se của S. Hai bức thư Sb và Se đảm bảo đầy đủ nội dung của S, tuy nhiên có thể
một phần cuối của Sb có thể được viết lặp lại trong phần đầu của Se, song số kí tự được
viết lặp lại không biết trước.
Ví dụ: với văn bản S=’chaomunghoithitruongthpthahuytapcamxuyen’ tạo ra hai bức thư:
Sb=’chaomunghoithitruongthpthahuytap’ và Se=’truongthpthahuytapcamxuyen’
Yêu cầu: Cho hai xâu Sb và Se, hãy xác định một xâu S có thể là nội dung của bức thư
sao cho độ dài của xâu S là ngắn nhất.
Dữ liệu vào: Cho trong tệp Letter.INP có cấu trúc. Dòng đầu chứa xâu Sb, dòng thứ hai
chứa xâu Se. Mỗi xâu có độ dài không quá 250.
Kết quả: Ghi vào tệp Letter.Out là độ dài của xâu S tìm được.
Letter.Inp
Letter .out
chaomunghoithitruongthptha
40
huytap
truongthpthahuytapcamxuy
en
Bài 3. (7 điểm)
SA MẠC
Sa mạc
là lưới ô vuông
cấp MxN ( 1≤ N,M ≤ 100). Trên mỗi ô của lưới người ta ghi một số nguyên a( 1≤ a ≤ 100)
được gọi là năng lượng của ô đó. Một con lạc đà đang ở ô (i,j) của lưới chỉ được đi đến
một trong hai ô (i+1,j) hoặc ô (i,j+1). Lạc đà đi đến ô nào thì hấp thụ được nguồn năng lượng tại ô đó. Hãy tìm cho lạc đà một đường đi từ ô (1,1) đến ô (M,N) theo nguyên tắc
trên và hấp thụ được nhiều năng lượng nhất.
Dữ liệu vào: Từ file văn bản SAMAC.INP, dòng đầu tiên ghi 2 số nguyên dương
theo thứ tự M, N.
Dòng thứ I trong M dòng tiếp theo ghi N số nguyên dương, số thứ J là năng lượng
trên ô (I , J) của sa mạc. (số thứ tự của các số trên một dòng tính từ trái qua phải)
Kết quả: Ghi ra file văn bản SAMAC.OUT, dòng đầu tiên ghi số S là năng lượng
mà lạc đà hấp thụ được. Từ dòng thứ 2 trở đi mỗi dòng ghi 2 số nguyên dương là toạ độ
các ô theo thứ tự trên đường đi của lạc đà.
Ví dụ:
SAMAC.INP
SAMAC.OUT
4 5
41
1 5 1 3 4
1 1
6 7 9 1 5
2 1
1 1 8 4 1
2 2
1 3 4 3 3
2 3
3 3
3 4
4 4
4 5
-------------------------HẾT---------------------Thí sinh không được sử dụng tài liệu
Giám thị coi thi không giải thích gì thêm
Họ và tên :……………………………………… ……Số báo danh:…………………