Tải bản đầy đủ (.docx) (43 trang)

Đề thi, đáp án hsg Tin cấp tỉnh 2017- 2023 - Luyện thi HSG Tin

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (532.38 KB, 43 trang )

SỞ GIÁO DỤC VÀ ĐÀO TẠO
…..

ĐỀ CHÍNH THỨC

KỲ THI CHỌN HỌC SINH GIỎI CẤP TỈNH
LỚP 12 THPT, NĂM HỌC 2017 – 2018
Môn: TIN HỌC – Bảng B
Thời gian làm bài: 180 phút (không kể thời gian phát đề)
Ngày thi: 09/12/2017
(Đề thi gồm 04 trang, 04 bài)

TỔNG QUAN BÀI THI
Tên bài
Bài 1
Bài 2
Bài 3
Bài 4

Chuẩn họ tên
Kho trung tâm
Hành trình tham quan
Trạm xăng

File chương
trình
Bai1.*
Bai2.*
Bai3.*
Bai4.*


File dữ liệu vào

File kết quả

DANHSACH.INP
KHO.INP
DULICH.INP
TRAMXANG.IN
P

DANHSACH.OUT
KHO.OUT
DULICH.OUT
TRAMXANG.OU
T

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à Pascal hoặc C++.
Hãy lập trình giải các bài tốn sau:
Bài 1: Chuẩn họ tên (4 điểm)
Bạn An mới được học tin học nên khi gõ danh sách gồm họ tên của các bạn trong lớp
nhưng không đúng theo chuẩn quy tắc gõ văn bản. Em hãy lập chương trình giúp bạn trình bày
danh sách lớp theo đúng chuẩn quy tắc gõ văn bản đồng thời sắp xếp danh sách lớp theo tên và
theo thứ tự từ điển (Biết rằng: sắp xếp theo thứ tự từ điển là: sắp xếp thứ tự theo tên, nếu trùng
tên thì sắp xếp theo tên đệm, nếu trùng tên đệm thì sắp xếp theo họ).
Chú ý: Họ tên được trình bày đúng theo chuẩn quy tắc gõ văn bản:
 Đầu và cuối của họ tên không chứa dấu cách (hay khoảng trống);
 Giữa các từ trong tên chỉ chứa một dấu cách;
 Đầu của mỗi từ được viết hoa.
Dữ liệu: vào từ file văn bản DANHSACH.INP bao gồm:

 Dòng đầu tiên chứa n số học sinh (0 < n ≤ 50);
 Dòng thứ i trong n dòng tiếp theo chứa họ tên học sinh mà bạn An đã gõ chưa
đúng theo chuẩn quy tắc gõ văn bản.
Kết quả: ghi ra file văn bản DANHSACH.OUT gồm: n dòng, mỗi dòng là họ tên học
sinh đã được trình bày đúng theo chuẩn văn bản và đã được sắp xếp tên theo thứ tự từ điển.
Ví dụ:
DANHSACH.INP
10
vU

tHI
duYEN
CAO THI THap
tRaN
THi DiEU
phan
dat
TrAN
DuonG
NguyEN MuOI
Ho VAN
BE
le
van
An
Tran VAN TI
Nguyen vAN
TEO

DANHSACH.OUT

Le Van An
Ho Van Be
Phan Dat
Tran Thi Dieu
Tran Duong
Vu Thi Duyen
Nguyen Muoi
Nguyen Van Teo
Cao Thi Thap
Tran Van Ti
Trang 1/43


Bài 2: Kho trung tâm (6 điểm)
Amazon là một công ty thương mại điện tử đa quốc gia đóng tại Hoa Kỳ, đây là nhà bán
lẻ trực tuyến lớn nhất Hoa Kỳ. Amazon bắt đầu như là một hiệu sách trực tuyến, nhưng nhanh
chóng đã đa dạng hố lĩnh vực bán lẻ của mình, bán cả DVD, CD, tải nhạc MP3, phần mềm
máy tính, trị chơi video, hàng điện tử, hàng may mặc, đồ gỗ, thực phẩm, đồ chơi, ….
Amazon có rất nhiều kho hàng và đặt nhiều địa điểm ở nhiều quốc gia. Để phục vụ cho
công tác kinh doanh, giám đốc điều hành của công ty đặt ra một bài tốn như sau: Cơng ty hiện
tại có n kho hàng được đánh số từ 1 đến n. Có m đường đi giữa các kho được đánh số từ 1 đến
m. Biết rằng: mỗi đường đi là hai chiều, ln có đường đi từ một kho bất kỳ đến các kho cịn
lại (có thể trực tiếp hoặc gián tiếp qua một số kho khác), giữa hai kho bất kỳ khơng có q một
đường đi trực tiếp và khơng có đường đi nào nối đến chính nó. Độ dài của mỗi đường đi được
xác định bởi một số nguyên dương.
Yêu cầu: Hãy viết chương trình chọn một kho từ danh sách n kho hiện tại để đặt làm
kho trung tâm. Kho được chọn phải thỏa mãn tiêu chí như sau: “Khoảng cách lớn nhất từ kho
này đến các kho còn lại phải là nhỏ nhất so với các kho khác”. Nếu có nhiều kho thỏa tiêu
chí thì chỉ cần chọn một kho bất kỳ trong những kho này. Biết rằng khoảng cách từ kho thứ i
đến kho thứ j được tính bằng tổng độ dài các đường đi trung gian (nếu có).

Dữ liệu: Vào từ file văn bản KHO.INP bao gồm:
 Dòng đầu tiên chứa hai số nguyên dương n và m theo thứ tự là số kho và số đường
đi giữa các kho của cơng ty;
 Dịng thứ i trong m dòng tiếp theo chứa ba số nguyên ui, vi, ci (
1 ≤ui , v i ≤ n, ui ≠ v i ,0< c ≤ 104 ), trong đó ui,vi là chỉ số của hai kho có đường đi trực tiếp
đến nhau bởi đoạn đường thứ i và ci là độ dài đoạn đường này, i=1, 2, …, m.
Các số trên cùng một dòng được ghi cách nhau bởi dấu cách.
Kết quả: Ghi ra file văn bản KHO.OUT một số nguyên là chỉ số của một kho được
chọn thỏa mãn điều kiện đặt ra.
Ràng buộc:
 Có 40% số lượng test thỏa mãn điều kiện: n ≤ 10, m ≤ 100;
 Có thêm 30% số lượng test thỏa mãn điều kiện: n, m ≤ 5000;
 Có 30% số lượng test cịn lại thỏa mãn điều kiện: n, m ≤ 104.
Ví dụ:
KHO.INP
7
1
2
3
4
4
4

6
2
3
4
5
6
7


KHO.OUT

Giải thích

3
1
1
1
1
2
2

Khoảng cách lớn nhất của mỗi kho đến các
kho còn lại:
Kho 1: 5, kho 2: 4, kho 3: 3 (được chọn),
kho 4: 3, nút 5: 4, kho 6: 5, kho 7: 5

Trang 2/43


Bài 3: Hành trình tham quan (6 điểm)
Một khu du lịch, có N địa điểm cần tham quan. Có M đường đi trong khu du lịch, hai
địa điểm tham quan được nối với nhau bằng một đường đi vô hướng và muốn đi hết đoạn
đường đó thì khách mất một khoảng thời gian là t. Khu du lịch cần lên tất cả các hành trình du
lịch để khách hàng biết trước. Tức là hàng khách xuất phát từ điểm thứ nhất (gọi là điểm bán
vé) đi tham quan hết tất cả các địa điểm trong khu du lịch và quay trở lại địa điểm bán vé, với
tổng thời gian trên mỗi hành trình tham quan xác định trước. Hãy giúp khu du lịch lên hành
trình đó. (Chú ý: Mỗi địa điểm tham quan chỉ đến một lần trong hành trình)
Dữ liệu: Vào từ file văn bản DULICH.INP bao gồm:

 Dòng đầu tiên chứa hai số nguyên dương N, M (N ≤ 100, M ≤ 103);
 Dòng thứ i trong M dòng tiếp theo mỗi dòng chứa 3 số nguyên dương xi, yi, ti với ý
nghĩa có đường đi từ điểm tham quan xi đến điểm tham quan yi và ti là thời gian đi từ
điểm xi đến điểm yi, ti ≤ 30.
Kết quả: Ghi ra file văn bản DULICH.OUT bao gồm: tất cả các hành trình tham quan
cùng với tổng thời gian cũng mỗi hành trình đó.
Ví dụ:
DULICH.OUT

DULICH.INP
5
1
1
1
2
2
2
5

7
5
3
4
3
5
4
4

2
1

3
2
2
1
2

Hanh
Hanh
Hanh
Hanh

trinh:1->3->2->4->5->1
trinh:1->3->2->5->4->1
trinh:1->4->5->2->3->1
trinh:1->5->4->2->3->1

Mat
Mat
Mat
Mat

khoang
khoang
khoang
khoang

thoi
thoi
thoi
thoi


gian
gian
gian
gian

8
10
10
8

Bài 4: Trạm xăng (4 điểm)
Có một số khu dân cư nằm dọc theo một đường quốc lộ. Đường quốc lộ được biểu diễn
bằng một trục số nguyên và vị trí mỗi khu dân cư được xác định bởi một số nguyên dương duy
nhất. Khơng có hai khu dân cư nào ở cùng một vị trí. Khoảng cách giữa hai khu dân cư khác
nhau được tính bằng trị tuyệt đối của hiệu giữa hai vị trí của chúng. Cụ thể, khu dân cư thứ i tại
vị trí xi, khu dân cư thứ j tại vị trí xj, khi đó khoảng cách giữa xi và xj là: khoangcach=¿ x i−x j∨¿
.
Cây xăng chỉ được xây dựng tại vị trí khu dân cư, mỗi khu dân cư chỉ được phép xây
dựng tối đa một trạm xăng. Mỗi khu dân cư và trạm xăng đặt tại đó có cùng vị trí. Để xây dựng
các trạm xăng nhà đầu tư cần chọn vị trí sao cho: “tổng khoảng cách từ mỗi khu dân cư đến
trạm xăng gần nhất đối với khu dân cư đó là nhỏ nhất”.
Yêu cầu: Bạn hãy viết chương trình sao cho khi biết v vị trí khu dân cư trên đường
quốc lộ và p trạm xăng cần xây dựng (p ≤ v), hãy tìm các vị trí đặt các trạm xăng thỏa mãn
điều kiện nêu trên.
Dữ liệu: vào trong file văn bản TRAMXANG.INP.
Trang 3/43


 Dòng thứ nhất chứa hai số nguyên: số thứ nhất là số khu dân cư v (1 ≤ v ≤ 300), số

thứ hai là số lượng trạm xăng p (1 ≤ p ≤ 30, p ≤ v);
 Dòng thứ hai chứa v số nguyên theo thứ tự tăng dần, v số nguyên này là các vị trí
của v khu dân cư. Với vị trí thứ i là một số nguyên xi (1 ≤ xi ≤ 10000, i=1,2,…,v).
Các số trên cùng một dịng ghi cách nhau ít nhất một dấu cách.
Kết quả: ghi ra file văn bản TRAMXANG.OUT gồm một dịng chứa một số ngun S
là tổng nhỏ nhất có thể được của các khoảng cách từ mỗi khu dân cư đến trạm xăng gần nhất
đối với nó.
Ràng buộc:
 Có 30% số lượng test thỏa mãn điều kiện: v ≤ 100, p ≤ 10;
 Có thêm 30% số lượng test thỏa mãn điều kiện: v ≤ 200, p ≤ 20;
 Có 40% số lượng test cịn lại thỏa mãn điều kiện: v ≤ 300, p ≤ 30.
Ví dụ:
TRAMXANG.INP
10 5
1 2 3 6 7 9 11 22 44 50

TRAMXANG.OUT
9

Giải thích
Đặt 5 trạm xăng tại các
khu dân cư thứ: 2 6 8 9
10
S=1+0+1+3+2+0+2+0+0+0=9

-----------------------Hết-----------------------





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.
SỞ GIÁO DỤC VÀ ĐÀO
TẠO


ĐỀ DỰ BỊ

KỲ THI CHỌN HỌC SINH GIỎI CẤP TỈNH
LỚP 12 THPT, NĂM HỌC 2017 – 2018

Môn: TIN HỌC – Bảng B
Thời gian làm bài: 180 phút (không kể thời gian
phát đề)

Ngày thi: 09/12/2017
(Đề thi gồm 03 trang, 04 bài)
Hãy lập trình giải các bài tốn sau đây và đặt tên tệp chương trình lần lượt là BAI1.*,
BAI2.*; BAI3.*, BAI4.*
Bài 1: Khoảng cách xâu (4 điểm)
Với một xâu ký tự, ta có thể tiến hành các phép biến đổi sau:
1. Thay một ký tự bất kỳ bởi một ký tự khác, chẳng hạn: test thành text.
2. Xóa một ký tự bất kỳ, chẳng hạn: text thành ext hoặc text thành txt.
3. Thêm một ký tự bất kỳ vào một vị trí bất kỳ, chẳng hạn SP thành SP2.
Với hai xâu S1 và S2, ta nói khoảng cách từ xâu S1 đến xâu S2 bằng số lượng ít nhất các
phép biến đổi thuộc ba cách trên mà khi áp dụng liên tiếp vào S1, ta sẽ nhận được xâu S2.
Trang 4/43


Dữ liệu: vào từ file văn bản KCXAU.INP gồm 2 dòng: dòng 1 là xâu S1, dòng 2 là xâu S2

(các xâu S1, S2 có độ dài khơng q 100 ký tự)
Kết quả: Ghi ra file văn bản KCXAU.OUT như sau:
 Dòng đầu tiên ghi số N là khoảng cách từ S1 đến S2;
 Các dòng tiếp theo, mỗi dòng ghi một phép biến đổi theo thứ tự để từ xâu S1, có
được xâu S2.
Ví dụ:
KCXAU
.INP
1A3BC
13Ab

KCXAU.OUT
3
1A3BC – Thay C/5/b => 1A3Bb
1A3Bb – Thay B/4/A => 1A3Ab
1A3Ab – Xoa A/2
=> 13Ab

Bài 2. Sắp xếp phân số (4 điểm)
Xét tập F(N) tất cả các số hữu tỷ trong đoạn [0,1] với mẫu số khơng vượt q N.
Ví dụ tập F(5): 0/1 1/5 1/4 1/3 2/5 1/2 3/5 2/3 3/4 4/5 1/1
Hãy viết chương trình cho phép nhập số nguyên N nằm trong khoảng từ 1 đến 100 và xuất ra
theo thứ tự tăng dần các phân số trong tập F(N) cùng số lượng các phân số đó.
Dữ liệu: vào từ file văn bản PHANSO.INP gồm 1 dòng là số nguyên dương N, 1 ≤ N ≤ 100.
Kết quả: ghi ra file văn bản PHANSO.OUT gồm:
 Dòng thứ nhất là số phân số tìm được;
 Dịng thứ hai là các phân số tìm được, mỗi phân số cách nhau ít nhất một khoảng trắng.
Ví dụ:
PHANS
O.INP

5

PHANSO.OUT
11
0/1
4/5 1/1

1/5 1/4

1/3

2/5

1/2

3/5

2/3

3/4

Bài 3. Bài tốn chúc Tết (6 điểm)
Một người quyết định dành một ngày Tết để đến chúc Tết các bạn của mình. Để chắc
chắn, hơm trước anh ta đã điện thoại đến từng người để hỏi khoảng thời gian mà người đó có
thể tiếp mình. Giả sử có N người được hỏi (đánh số từ 1 đến N), người thứ i cho biết thời gian
có thể tiếp trong ngày là từ Ai đến Bi (i = 1, 2, ..., N). Giả thiết rằng, khoảng thời gian cần thiết
cho mỗi cuộc gặp là H và khoảng thời gian chuẩn bị từ một cuộc gặp đến một cuộc gặp kế tiếp
là T. Bạn hãy xây dựng giúp một lịch chúc Tết để anh ta có thể chúc Tết được nhiều người
nhất.
Dữ liệu: vào trong file CHUCTET.INP gồm:

 Dòng đầu ghi số N (N ≤ 30)
 Dòng thứ i trong số N dòng tiếp theo ghi khoảng thời gian có thể tiếp khách của
người i gồm 2 số thực Ai và Bi (cách nhau ít nhất một dấu trắng). Dòng tiếp theo
ghi giá trị H (số thực) và dòng cuối cùng ghi giá trị T (số thực). Giả thiết rằng
các giá trị thời gian đều được viết dưới dạng thập phân theo đơn vị giờ, tính đến
Trang 5/43


1 số lẻ (thí dụ 10.5 có nghĩa là mười giờ rưỡi) và đều nằm trong khoảng từ 8 đến
21 (từ 8 giờ sáng đến 9 giờ tối).
Kết quả: ghi ra file CHUCTET.OUT gồm dòng đầu ghi K là số người
được thăm, K dịng tiếp theo ghi trình tự đi thăm, mỗi dịng gồm 2 số (ghi
cách nhau ít nhất một dấu trắng): số đầu là số hiệu người được thăm, số
tiếp theo là thời điểm gặp tương ứng.
Ví dụ:
CHUCTET.INP
20
10.5
15.5
14.0
17.5
15.0
10.5
19.0
10.5
12.5
11.5
12.5
16.0
13.5

12.5
13.0
18.5
9.0
10.5
10.5
18.0
0.5

12.6
16.6
14.1
21.0
16.1
10.6
21.0
13.6
12.6
13.6
15.6
18.1
14.6
17.6
13.1
21.0
13.1
11.6
12.6
21.0
0.1


CHUCTET.OU
T
16
17
9.0
1 10.5
18
11.1
19
11.7
8 12.3
10
12.9
11
13.5
13
14.1
5 15.0
2 15.6
12
16.2
14
16.8
4 17.5
7 19.0
16
19.6
20
20.2


Bài 4. Biến đổi 0 - 1 (6 điểm)
Cho 2 lưới ô vuông A và B cùng kích thước M×N, mỗi ơ có chỉ nhận các giá trị 0 hoặc 1
(A ≠ B). Các ô lưới được đánh số từ trên xuống dưới, từ trái qua phải bắt đầu từ 1. Cho phép
thực hiện phép biến đổi sau đây với lưới A: Chọn ô (i, j) và đảo giá trị của ơ đó và các ô chung
cạnh với nó theo nguyên tắt 0 thành 1, 1 thành 0.
Hãy xác định xem bằng cách áp dụng dãy biến đổi trên có thể đưa A về B được hay
khơng? Nếu có hãy chỉ ra cách sử dụng một số ít nhất phép biến đổi.
Dữ liệu: vào từ file văn bản BIENDOI.INP
 Dòng đầu tiên ghi hai số M, N là kích thước ơ lưới (M, N <= 100);
 M dòng tiếp theo, mỗi dòng một xâu N kí tự 0, 1 ứng với dịng tương ứng của A;
 Tiếp theo là một dòng trống;
 M dòng cuối mỗi dịng 1 xâu N kí tự 0, 1 ứng với dòng tương ứng của B.
Trang 6/43


Kết quả: Ghi ra file văn bản BIENDOI.OUT
 Dòng đầu số nguyên k là số lượng phép biến đổi ít nhất cần áp dụng (k = 0 nếu không
biến đổi được)
 Dòng thứ i trong số k dòng tiếp theo ghi hai số nguyên xác định ô cần chọn để thực
hiện phép biến đổi.
Ví dụ:
BIENDOI.INP
4 5
1 0 0 0 0
1 0 0 0 0
0 1 0 0 0
0 1 0 0 0
0
0

0
0

0
0
0
0

0
0
1
0

0
0
0
0

BIENDOI.OUT
2
2 1

0
0
0
0

----------------Hết----------------

 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.
SỞ GIÁO DỤC VÀ
ĐÀO TẠO
….

KỲ THI CHỌN HỌC SINH GIỎI CẤP TỈNH
GIA LAI
LỚP 12 THPT, NĂM HỌC 2017 – 2018
Môn: TIN HỌC – Bảng B
Thời gian làm bài: 180 phút (không kể thời gian phát
đề)
Ngày thi: 09/12/2017

HƯỚNG DẪN CHẤM ĐỀ CHÍNH THỨC
Chú ý: Chương trình cịn lỗi, khơng chạy ra kết quả: 0 điểm.
Bài 1. Chuẩn họ tên (4 điểm)
B

Tes
t

DANHSACH.INP
T

20
vU tHI duYEN
An
CAO THI THap
tRaN
THi


est

DiEU
phan dat
TrAN DuonG
NguyEN MuOI

DANHSAC
H.OUT
Le Kim Van
Le Van An
Ho Ba Be
Ho Van Be
Phan Dat
Tran Dat
Le Thi Dieu

ĐIỂM
- Thí sinh thực hiện xóa các
khoảng cách đầu, cuối, giữa: 1.0 điểm
- Đầu của mỗi kí tự viết hoa:
2.0 điểm
- Sắp xếp danh sách: 1.0 điểm

Trang 7/43


Tran
Ho VAN BE

le van An
Tran VAN TI
Nguyen
vAN
TEO

TEO

Thi

Dieu
Le Duong
Tran Duong
Vu
Thi
Duyen

Vu
Thi
vU tHI duYEN
Duyen
CAO THI HAU
Cao Thi Hau
LE THi DiEU
Nguyen Muoi
TRAN dat
Tran Muoi
LE DuonG
Nguyen Van
TRAN MuOI

Teo
Ho BA BE
Nguyen Van
le KIM van An
Kim Teo
Tran KIM VAN TI
Cao Thi Thap
Nguyen vAN KIM
Tran
Kim
Van Ti
Tran Van Ti

Bài 2. Kho trung tâm (6 điểm)
Bộ
Test
Test
1
Test
2
Test
3
Test
4
Test
5
Test
6
Test
7

Test
8
Test
9
Test
10

KHO.INP

KHO.OUT

ĐIỂM

KHO.IN1

3

0.6 đ

KHO.IN2

100

0.6 đ

KHO.IN3

17

0.6 đ


KHO.IN4

52

0.6 đ

KHO.IN5

20

0.6 đ

KHO.IN6

56

0.6 đ

KHO.IN7

47

0.6 đ

KHO.IN8

138

0.6 đ


KHO.IN9

15

0.6 đ

KHO.IN10

154

0.6 đ

Bài 3. Hành trình tham quan (6 điểm)
B
ộ Test
T
est 1

DULIC
H.INP
57
122
132

DULICH.OUT
Hanh trinh:1->2->3->4->5->1 Mat khoang thoi gian 11
Hanh trinh:1->2->5->4->3->1 Mat khoang thoi gian 10
Hanh trinh:1->3->4->5->2->1 Mat khoang thoi gian 10


Đ
IỂM
2
.0 đ
Trang 8/43


T
est 2

T
est 3

153
233
341
452
523
69
152
131
143
232
252
241
462
542
563
8 16
123

183
235
276
283
347
3 5 40
361
373
455
461
474
569
571
672
788

Hanh trinh:1->5->4->3->2->1 Mat khoang thoi gian 11

Hanh trinh:1->3->2->4->6->5->1 Mat khoang thoi gian
11
Hanh trinh:1->3->2->5->6->4->1 Mat khoang thoi gian
13

2
Hanh trinh:1->4->6->5->2->3->1 Mat khoang thoi gian

.0đ

13
Hanh trinh:1->5->6->4->2->3->1 Mat khoang thoi gian

11
Hanh
thoi gian 42
Hanh
thoi gian 37
Hanh
thoi gian 67
Hanh
thoi gian 73
Hanh
thoi gian 27
Hanh
thoi gian 38
Hanh
thoi gian 38
Hanh
thoi gian 73
Hanh
thoi gian 27
Hanh
thoi gian 37
Hanh
thoi gian 67
Hanh
thoi gian 42

trinh:1->2->3->4->5->6->7->8->1 Mat khoang
trinh:1->2->3->4->6->5->7->8->1 Mat khoang
trinh:1->2->3->5->4->6->7->8->1 Mat khoang
trinh:1->2->3->5->6->4->7->8->1 Mat khoang

trinh:1->2->3->6->4->5->7->8->1 Mat khoang
trinh:1->2->3->6->5->4->7->8->1 Mat khoang
2
trinh:1->8->7->4->5->6->3->2->1 Mat khoang

.0 đ

trinh:1->8->7->4->6->5->3->2->1 Mat khoang
trinh:1->8->7->5->4->6->3->2->1 Mat khoang
trinh:1->8->7->5->6->4->3->2->1 Mat khoang
trinh:1->8->7->6->4->5->3->2->1 Mat khoang
trinh:1->8->7->6->5->4->3->2->1 Mat khoang

Bài 4. Trạm xăng (4 điểm)
Bộ
TRAMXANG.INP
Test
Test
TRAMXANG.IN1

TRAMXANG.
OUT
3939

ĐIỂM
0.4 đ

1
Test


TRAMXANG.IN2

5319

0.4 đ

2
Trang 9/43


Test

TRAMXANG.IN3

9513

0.4 đ

Test

TRAMXANG.IN4

12954

0.4 đ

Test

TRAMXANG.IN5


18713

0.4 đ

Test

TRAMXANG.IN6

10610

0.4 đ

Test

TRAMXANG.IN7

11724

0.4 đ

Test

TRAMXANG.IN8

14055

0.4 đ

Test


TRAMXANG.IN9

16316

0.4 đ

Test

TRAMXANG.IN10

17777

0.4 đ

3
4
5
6
7
8
9
10
----------------Hết----------------

Trang 10/43


SỞ GIÁO DỤC VÀ ĐÀO TẠO
.
ĐỀ CHÍNH THỨC


Tên bài
Bài 1
Bài 2
Bài 3
Bài 4

Mã hóa thơng điệp
Tìm đường đi của
Robot
Trao q
Trạm cứu hỏa

KỲ THI CHỌN HỌC SINH GIỎI CẤP TỈNH
LỚP 12 THPT, NĂM HỌC 2018 – 2019
Môn: TIN HỌC – Bảng B
Thời gian làm bài: 180 phút (không kể thời gian phát đề)
Ngày thi: 12/12/2018
(Đề thi gồm 04 trang, 04 bài)
TỔNG QUAN BÀI THI
File chương
File dữ liệu vào
trình
Bai1.*
T_DIEP.INP
Bai2.*
TAMGIAC.INP;
THUQUA.INP
Bai3.*
GIFT.INP

Bai4.*
JOBS.INP

File kết quả
T_DIEP.OUT
ROBOT.OUT
GIFT.OUT
JOBS.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à Pascal hoặc C++.
Hãy lập trình giải các bài tốn sau:
Bài 1. MÃ HĨA THƠNG ĐIỆP (6 điểm)
Robert đang chơi trị chơi mã hóa thông điệp, mỗi thông điệp là một xâu gồm các kí tự
trong bảng mã ASCII. Luật chơi như sau:
- Chỉ mã hóa các kí tự trong bảng chữ cái  dưới đây:
Vị trí
1
2
3
4
5
6
7
8
Kí tự
A
B
C
D

E
F
G
H
Vị trí 14
15
16
17
18
19
20
21
Kí tự
N
O
P
Q
R
S
T
U
Bảng chữ cái 

9
I
22
V

10
J

23
W

11
K
24
X

12
L
25
Y

13
M
26
Z

- Để mã hóa một kí tự trong  cần có một khóa K , với K là một số nguyên khơng âm.
- Một kí tự  trong  được mã hóa thành một kí tự  ' trong  với vị trí của  ' có được
bằng cách dịch chuyển qua phải K vị trí tính từ vị trí hiện tại của  trong  . Nếu dịch chuyển
đến vị trí cuối cùng (vị trí số 26) trong  thì vị trí tiếp theo là vị trí đầu tiên (vị trí số 1) trong
.

Bạn hãy giúp Robert viết chương trình mã hóa những thơng điệp theo luật chơi trên.
- Dữ liệu vào: Tệp T_DIEP.INP có nội dung:
4
. Dịng 1: Chứa hai số nguyên n và K với n là số thơng điệp cần mã hóa 5 n 10 , K
4
là khóa 0  K 10 .

. n dịng tiếp theo mỗi dịng chứa nội dung một thơng điệp cần mã hóa.
- Dữ liệu ra: Tệp T_DIEP.OUT có nội dung:
. Dịng 1: Ghi hai số nguyên n và K .
. n dịng tiếp theo mỗi dịng chứa nội dung một thơng điệp đã được mã hóa.

Trang 11/43


- Ví dụ:
T_DIEP.INP
T_DIEP.OUT
5 17
5 17
ABCD
RSTU
HOC SINH GIOI
YFT JZEY XZFZ
Nam Hoc 2018 – 2019
Eam Yoc 2018 – 2019
GIALAI.EDU.VN
XZRCRZ.VUL.ME


Bài 2. TÌM ĐƯỜNG ĐI CỦA ROBOT (4 điểm)
Trong cuộc thi Robocon, robot phải di chuyển trong địa hình có hình dạng tựa một tam
giác vng cân có độ cao h (3 h 500) . Robot xuất phát từ đỉnh của tam giác (ô phía trên
cùng bên trái), sau đó lần lượt di chuyển qua các ơ và q trình di chuyển kết thúc khi robot
đến được một ơ bất kỳ nằm trên dịng cuối cùng của tam giác. Robot chỉ có thể di chuyển theo
hai hướng: Từ ô hiện tại đến ô kề dưới ô hiện tại hoặc ô kề dưới bên phải ô hiện tại. (Minh họa
như hình 1)

Tại mỗi ô của tam giác ban tổ chức đặt một món
Ơ xuất phát
q có giá trị k (1 k 500) . Trong quá trình di chuyển,

h

.
.
.
...
h
Hình 1

robot sẽ nhặt các món q được đặt tại các ơ nằm trên
đường đi của nó.
Để tăng thêm độ khó, ban tổ chức qui định
một số ơ
“thu q”, là ơ mà khi robot di chuyển vào
thì sẽ bị
thu tồn bộ số q robot đã nhặt được
trước đó (kể cả q tại ơ đó).
Bạn hãy lập trình tìm một đường đi cho robot sao
cho sau khi kết thúc q trình di chuyển, tổng giá trị các
món q mà robot
nhặt được trên đường

đi là lớn nhất.

- Dữ liệu vào:
+ Tệp TAMGIAC.INP có nội dung:

. Dịng 1: Chứa một số nguyên dương h .
. h dòng tiếp theo, mỗi dòng chứa i số là giá trị các món quà ở dòng thứ i của tam giác

(1 i h) .
+ Tệp THUQUA.INP có nội dung:
. Dịng 1: Chứa một số ngun dương n (với n là số ô “thu quà”).
. n dòng tiếp theo, mỗi dòng chứa hai số i, j là vị trí của ơ “thu q” (hàng thứ i , cột thứ
j ).

- Dữ liệu ra: Tệp ROBOT.OUT có nội dung:
Trang 12/43


. Dòng 1: Ghi số S là tổng giá trị lớn nhất của các món quà nhặt được trên đường đi sau khi
kết thúc quá trình di chuyển của robot.
. Dòng tiếp theo ghi một đường đi của Robot để nhặt được các món quà có tổng giá trị lớn
nhất (S).

Trang 13/43


- Ví dụ:
TAMGIAC.IMP
THUQUA.INP
6
1
2
4 2
3 1
4 9 8

3 9 2 5
3 5 4 7 5
1 3 5 8 1 9
Ràng buộc:

ROBOT.OUT
31
(1,1)  (2,2)  (3,3)  (4,4)  (5,4)  (6,4)

 h
 
+ Có 50% số lượng Test thõa mãn điều kiện (3 h 50) , số ô “thu quà”  5 
 h
 
+ Có 50% số lượng Test thõa mãn điều kiện (50  h 500) , số ô “thu quà”  5 
Bài 3. TRAO QUÀ (6 điểm)
Công ty “Gold Star” có M nhân viên (1≤M≤100). Trong năm 2018, doanh thu của công
ty này rất cao. Để động viên tinh thần cho các nhân viên, ngoài việc tăng lương, giám đốc John
còn dự định tổ chức một buổi giao lưu với họ vào một ngày cuối năm. Trước ngày giao lưu, vị
giám đốc này đã chuẩn bị N món quà khác nhau (1≤N≤100) và đồng thời gửi danh sách N món
quà này đến với các nhân viên để lấy sở thích của họ. Một nhân viên có thể thích nhiều hơn
một món q (hoặc khơng thích món q nào) trong danh sách. Các món quà sẽ được giám đốc
trao tận tay đến các nhân viên may mắn trong buổi giao lưu. Với những dữ liệu đã có, bạn hãy
giúp giám đốc John vạch một kế hoạch trao quà sao cho số lượng nhân viên được nhận quà là
nhiều nhất và mỗi nhân viên chỉ nhận đúng một món q nằm trong sở thích của mình.
- Dữ liệu vào: Tệp gift.inp có nội dung:
. Dịng 1: Chứa hai số nguyên dương M, N(1≤M,N≤100). Với M là số nhân viên, N là số món
q.
. Các dịng tiếp theo, mỗi dịng chứa hai số nguyên dương i, j cho biết nhân viên i thích món
q j.

- Dữ liệu ra: Tệp gift.out có nội dung:
. Dịng 1: Ghi số lượng nhân viên lớn nhất được nhận quà (S).
. S dòng tiếp theo, mỗi dịng ghi thơng tin về nhân viên được tặng q và món q được nhận.
- Ví dụ:
Dữ liệu vào/ra
Minh họa dữ liệu vào
Minh họa dữ liệu ra
gift.inp gift.out Nhân viên Món q
Giải thích
Nhân viên Món q
Giải thích
4
5 4
- Có 4 nhân
- Có 4 Nv
1
1 1
1
viên (Nv),
được may




1
4 2
4
5 món quà.
mắn nhận
2

1 3
3
- Nv 1
quà.




2
2 4
2
thích quà 1,
- Nv 1 nhận
2
4
4.
quà 1.




3
2
- Nv 2
- Nv 2 nhận
3
3
thích
quà
1,

quà 4.




4
2
2, 4.
- Nv3 nhận
Trang 14/43


4

5
1
1
1
1
2
2
3
4

3



- Nv
thích quà

3.
- Nv
thích quà
3.

3
2,

quà 3.
- Nv 4 nhận
quà 2.

4
2,

Ràng buộc:
+ Có 50% số lượng Test thõa mãn điều kiện: 1≤M≤50, 1≤N≤50.
+ Có 50% số lượng Test thõa mãn điều kiện: 50Bài 4.TRẠM CỨU HỎA (4 điểm)
NEW LAND là một thị trấn mới được thành lập, tại thị trấn này có N ngơi làng, các
ngơi làng được đánh số từ 1 đến N, giữa các ngôi làng luôn tồn tại đường đi hai chiều (trực tiếp
hoặc gián tiếp). Do nhiều nguyên nhân khách quan nên toàn bộ các con đường ở đây đều rất
xấu và xuống cấp nghiêm trọng. Bên cạnh đó, vì mới thành lập nên tại thị trấn này chưa có
trạm cứu hỏa, vì vậy mỗi khi hỏa hoạn xảy ra thường gây thiệt hại lớn về vật chất cho nhân
dân. Jobs vừa mới được bầu làm thị trưởng NEW LAND và công việc đầu tiên ông ta cần làm
là xây dựng một trạm cứu hỏa. Tuy nhiên do kinh phí có hạn nên ơng ta phải đứng trước một
bài tốn khó khăn: “Cần chọn một ngơi làng đặt trạm cứu hỏa và một số đoạn đường để
nâng cấp sao cho với hệ thống giao thông chỉ gồm những con đường được nâng cấp, từ
trạm cứu hỏa đến mỗi ngơi làng có đúng một đường đi và khoảng cách từ ngôi làng xa
trạm nhất đến trạm là nhỏ nhất có thể được”. Bạn hãy giúp Jobs giải quyết bài tốn trên.

- Dữ liệu vào: Tệp jobs.inp có nội dung:
. Dòng 1: Chứa một số nguyên N (1≤N≤200) với N là số ngơi làng.
. Các dịng tiếp theo, mỗi dòng chứa ba số nguyên U, V, W với ý nghĩa tồn tại đường đi
hai chiều nối ngôi làng U với ngơi làng V có độ dài là W (1≤W≤10000, W là số nguyên).
- Dữ liệu ra: Tệp jobs.out có nội dung:
. Dịng 1: Ghi tên ngơi làng được chọn để đặt trạm cứu hỏa.
. Dòng 2: Ghi khoảng cách từ ngơi làng xa nhất đến trạm.
. Các dịng tiếp theo, mỗi dòng ghi hai số U và V là con đường nối trực tiếp từ ngôi làng
U đến ngôi làng V được chọn để nâng cấp.
- Ví dụ:
Dữ liệu vào/ra
Minh họa dữ liệu vào/ra
jobs.inp
jobs.out
jobs.inp
jobs.out
4
2
50
25
3
30
1 5
4
100
2 3
5
10
2 4
3

5
4 5
4
20
4
50
5
10
- Chọn ngơi làng thứ 4 làm nơi đặt
- Có 5 ngơi làng.
trạm cứu hỏa.
- Có 8 con đường hai chiều trực - Các con đường được chọn để
tiếp nối giữa các con đường.
nâng cấp: (1,5), (2,3), (2,4), (4,5).
Trang 15/43


- Ràng buộc:
+ Có 50% số lượng Test thõa mãn điều kiện: 1≤N≤100.
+ Có 50% số lượng Test thõa mãn điều kiện: 100--- HẾT --- Thí sinh khơng được sử dụng tài liệu trong lúc làm bài.
- Cán bộ coi thi khơng giải thích gì thêm.

Trang 16/43


SỞ GIÁO DỤC VÀ
ĐÀO TẠO
.


KỲ THI CHỌN HỌC SINH GIỎI CẤP TỈNH
GIA LAI
LỚP 12 THPT, NĂM HỌC 2018 – 2019
Môn: TIN HỌC – Bảng B.
Ngày
thi:
12/12/2018

HƯỚNG DẪN CHẤM ĐỀ CHÍNH THỨC
Chú ý: Chương trình của một bài cịn lỗi, khơng chạy ra kết quả thì chấm trực tiếp
Code nhưng điểm đạt được không vượt quá 25% tổng số điểm của bài đó.
Bài 1. Mã hóa thơng điệp (6 điểm)
T_DIEP.INP

Đ

T_DIEP.OUT

IỂM

6 1717
6 1717
CONG HOA XA HOI CHU NGHIA
DPOH IPB YB IPJ DIV OHIJB
VIET NAM
WJFU OBN
DOC LAP - TU DO - HANH PHUC
EPD MBQ - UV EP - IBOI QIVD
**********
**********

SO DIEN THOAI 0935355389
TP EJFO UIPBJ 0935355389
SO GIAO DUC VA DAO TAO GIA
TP HJBP EVD WB EBP UBP
LAI
HJB MBJ
Duong Len Dinh Olympia @
Euong Men Einh Plympia @

1
1
1
1
1
1

Bài 2. Tìm đường đi của Robot (4 điểm)
T

mục
T
est1
T
est2
T
est3
T
est4

Test In


Test
Out

TAMGIAC.INP;
THUQUA.OUT
TAMGIAC.INP;
THUQUA.OUT
TAMGIAC.INP;
THUQUA.OUT
TAMGIAC.INP;
THUQUA.OUT

ROBO
T.OUT
ROBO
T.OUT
ROBO
T.OUT
ROBO
T.OUT

Bài 3. Trao quà (6 điểm)
Tes
Test
t In
Out
GIF
GIF
T.IN1

T.OU1
GIF
GIF
T.IN2
T.OU2
GIF
GIF
T.IN3
T.OU3
GIF
GIF
T.IN4
T.OU4
GIF
GIF
T.IN5
T.OU5
GIF
GIF
T.IN6
T.OU6

GHI CHÚ

Đ
IỂM
1
1
1
1


Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD

Đ

GHI CHÚ

1

Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD

IỂM

1
1
1
1
1

Trang 17/43


Bài 4. Trạm cứu hỏa (4 điểm)
Test
Test
In
Out
JOBS
JOBS.
.IN1
OU1
JOBS
JOBS.
.IN2
OU2
JOBS
JOBS.
.IN3
OU3
JOBS
JOBS.
.IN4
OU4

JOBS
JOBS.
.IN5
OU5
JOBS
JOBS.
.IN6
OU6
JOBS
JOBS.
.IN7
OU7
JOBS
JOBS.
.IN8
OU8
JOBS
JOBS.
.IN9
OU9
JOBS
JOBS.
.IN10
OU10

Đ

GHI CHÚ

0


Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD
Dữ liệu chấm ghi trong
đĩa CD

IỂM
.4
0
.4
0
.4
0
.4

0
.4
0
.4
0
.4
0
.4
0
.4
0
.4

----------------Hết----------------

SỞ GIÁO DỤC VÀ

KỲ THI CHỌN HỌC SINH GIỎI LỚP 12 CẤP

ĐÀO TẠO

TỈNH (BẢNG B)

GIA LAI

NĂM HỌC 2020 – 2021
Môn thi: TIN HỌC

ĐỀ CHÍNH THỨC


Thời gian: 180 phút (khơng kể thời gian phát đề)
Ngày thi: 12/12/2020
(Đề thi có 04 bài, 04 trang)
TỔNG QUAN ĐỀ THI

B

Tên bài

ài
1
2
3
4

Tên file
chương
trình
DAYSO.

DÃY

SỐ

(4

điểm)

*
TẶNG QUÀ (4


điểm)

TANGQ

CÁCH XẾP (6

TANGQUA

CACHXE

ĐỒ THỊ CON
DOTHIC
(6 điểm)
ON.*

1

TANGQUA.

CACHXEP.

2
s

CACHXEP.
OUT

DOTHICO
N.INP


hời
gian
s

OUT

INP

T

DAYSO.OU
T

.INP

P.*

Tên file
dữ liệu ra

DAYSO.IN
P

UA.*

điểm)

Tên file
dữ liệu vào


2
s

DOTHICON
.OUT

2
s

Lưu ý:
Trang 18/43


- Dấu * được thay thế bởi PAS hoặc CPP của ngơn ngữ lập trình tương ứng là Pascal hoặc
C++.
- Thí sinh bắt buộc phải đặt tên file chương trình, file dữ liệu như trên.
- Khi hết thời gian làm bài, tại máy tính được sử dụng để làm bài thi, thí sinh tạo một thư mục
với tên là số báo danh của mình và đặt các file bài làm (file chương trình .CPP hoặc .PAS) vào thư
mục vừa tạo. Sau đó tiến hành ghi nội dung thư mục này vào đĩa CD dưới sự giám sát và hướng dẫn
của Cán bộ coi thi và sự chứng kiến của một thí sinh nào đó tại phịng thi.
Bài 1 (4.0 điểm): DÃY SỐ
Cho số nguyên dương N, dãy A gồm N số nguyên dương: A1, A2, …, AN và số nguyên dương X.
Bạn hãy viết chương trình đưa ra số lượng cặp (i, j) thỏa mãn điều kiện:



1 ≤ i ≤ j ≤ N;




Ai + Aj2 = X;

Dữ liệu: Vào từ file văn bản DAYSO.INP gồm hai dòng


Dòng đầu gồm 2 số nguyên dương N và X (1 ≤ N ≤ 105,1 ≤ X ≤ 109).



Dòng thứ hai gồm N số nguyên dương: A1, A2, …, AN (Ai ≤ 104, i=1→N).

Kết quả: Ghi ra file văn bản DAYSO.OUT gồm một số nguyên duy nhất là số lượng cặp (i, j)
thỏa mãn điều kiện đã nêu trên.
Ví dụ:
DAYS
O.INP
35

DAYS
O.OUT

GIẢI THÍCH

1

- Có 1 cặp (i, j) thỏa mãn điều kiện (i=1, j=2)

6


- Có 6 cặp (i, j) thỏa mãn điều kiện:

121
36
222

(i=1, j=1); (i=1, j=2); (i=1, j=3);
(i=2, j=2); (i=2, j=3); (i=3, j=3);

+ Ràng buộc:



Có 50% số lượng Test thỏa mãn điều kiện (N ≤ 103).



50% Test cịn lại khơng có ràng buộc gì thêm.
Bài 2 (4.0 điểm): TẶNG QUÀ

Ở một ngôi làng nọ, ông già Noel muốn tặng quà cho các cháu trong ngôi làng của
mình. Một hơm ơng mời các cháu tới một ngơi trường trong làng để tặng quà. Trong buổi tặng quà đó
có N cháu. Ơng già Noel đã đi đến từng cháu hỏi về tuổi hoặc là hỏi về xếp loại hạnh kiểm cuối năm
của cháu đó. Sau đó ơng ra ngồi để lấy q vào tặng, vì lớn tuổi nên khi ra ngồi lấy q thì ơng lại
qn số lượng các cháu cần tặng quà. Ông đã quyết định quay trở lại và hỏi một lần nữa, nhưng vì
khơng muốn làm phiền mọi người nên ông muốn số lượng các cháu cần hỏi là ít nhất.
Bạn hãy tính xem ơng già Noel cần hỏi ít nhất bao nhiêu cháu để biết chắc chắn cháu
nào được nhận quà. Biết rằng những cháu nhận quà là những cháu có tuổi nhỏ hơn 15 tuổi hoặc có xếp
loại hạnh kiểm cuối năm là TỐT (TOT), KHÁ (KHA).
Giả thiết rằng các cháu đều nói thật và đều trả lời duy nhất một câu hỏi về tuổi hoặc

hạnh kiểm.
Dữ liệu: Vào từ file văn bản TANGQUA.INP gồm


Dòng thứ nhất chứa số nguyên dương N (1 ≤ N ≤ 100),
Trang 19/43


N dịng tiếp theo, mỗi dịng miêu tả thơng tin trả lời của các cháu khi ơng già Noel hỏi.
Dịng thứ i là tuổi hoặc xếp loại hạnh kiểm của cháu thứ i (là một xâu chứa các kí tự
Latinh in hoa có tối đa 100 kí tự).
Kết quả: Ghi ra file văn bản TANGQUA.OUT gồm một dòng duy nhất là số lượng
cháu mà ơng già Noel cần hỏi.


Ví dụ:
TANGQUA.INP
9

TANGQUA.
OUT

GIẢI THÍCH

5

Ơng già Noel cần hỏi cháu thứ 1, 2, 6,
8, 9

TOT

KHA
16
TB
15
TOT
TB
5
TOT
+ Ràng buộc: Khơng có ràng buộc gì thêm
Bài 3 (6 điểm): CÁCH XẾP

Kỳ thi chọn học sinh giỏi Tin học đang tới gần, địa điểm tổ chức thi là tại sân trường.
Trường THPT A đang tìm cách sắp xếp chỗ ngồi phù hợp cho các thí sinh sao cho các thí sinh khơng
thể gian lận để Kỳ thi diễn ra thật công bằng. Trường THPT A đã giao cho Thầy An tìm ra giải pháp
sắp xếp chỗ ngồi phù hợp cho các thí sinh trong Kỳ thi. Vừa nghe yêu cầu, Thầy An liền nghĩ ra một
cách xếp thú vị:
- Sân trường được chia thành một lưới ô vuông có kích thước là N x M (N hàng, M cột),
mỗi thí sinh được xếp ngồi trên một ơ trong lưới, mỗi ơ chỉ có nhiều nhất một học sinh. Ô ở hàng i, cột
j được gọi là ô (i, j).
- Mỗi thí sinh chỉ được ngồi quay mặt về một trong 4 hướng: Đông, Tây, Nam, Bắc.
- Để việc gian lận trao đổi bài với nhau là không xảy ra, nếu có hai thí sinh ngồi cùng
hàng, tức là nếu có hai thí sinh ở vị trí (i, j1) và (i, j2) (1 ≤ i ≤ N; 1 ≤ j1 < j2 ≤ M) thì thí sinh ngồi ở vị trí
(i, j1) phải quay mặt về hướng Tây thì thí sinh cịn phải quay mặt về hướng Đơng.
- Tương tự, nếu có hai thí sinh ngồi cùng một cột, thì thí sinh ngồi ở hàng nhỏ hơn phải
quay mặt về hướng Bắc và thí sinh cịn lại phải quay mặt về hướng Nam.
Dù là cách sắp xếp không phải là tối ưu nhất, nhưng dù sao nó cũng là một cách xếp
độc đáo và mang tính cơng bằng cao. Thầy An tự hỏi khơng biết có bao nhiêu cách để xếp ít nhất một
thí sinh lên sân trường với cách sắp xếp thú vị trên.
Bạn hãy giúp Thầy An tính ra số cách xếp như trên.
Dữ liệu: Vào từ file văn bản CACHXEP.INP gồm một dòng duy nhất chứa 2 số nguyên

dương N, M là số dòng và cột của lưới ô vuông.
Kết quả: Ghi ra file văn bản CACHXEP.OUT gồm một số duy nhất là phần dư của số lượng
cách xếp theo Thầy An khi chia cho 109+7.
Ví dụ:
Trang 20/43



×