You are on page 1of 3

SỞ GIÁO DỤC VÀ ĐÀO TẠO KỲ THI CHỌN HỌC SINH GIỎI CẤP TỈNH

PHÚ THỌ LỚP 12 THPT NĂM HỌC 2021 - 2022


Môn: TIN HỌC
ĐỀ CHÍNH THỨC Thời gian làm bài: 180 phút, không kể thời gian giao đề
(Đề thi có 03 trang)

TỔNG QUAN BÀI THI


File chương File dữ liệu Thời
Bài Tên bài File kết quả Điểm
trình vào gian
Bài 1 Văn nghệ VN.* VN.INP VN.OUT 6,0 1s
Bài 2 Cập nhật dãy UDTSEQ.* UDTSEQ.INP UDTSEQ.OUT 5,0 1s
Bài 3 Đếm cặp COUNT.* COUNT.INP COUNT.OUT 5,0 1s
Bài 4 Tô bảng TOBANG.* TOBANG.INP TOBANG.OUT 4,0 1s
Phần mở rộng .* là: .pas đối với ngôn ngữ lập trình Pascal; .cpp đối với ngôn ngữ lập trình C++; .C
đối với ngôn ngữ lập trình C hoặc .py đối với ngôn ngữ lập trình Python.
Hãy lập trình giải các bài toán sau:
Bài 1: Văn nghệ
Đội văn nghệ xung kích của Trường THPT X được cử đi diễn giao lưu ở các huyện trong
tỉnh Y. Đội có n bạn nam và m bạn nữ được chia thành các tổ, mỗi tổ sẽ được giao nhiệm vụ
biểu diễn tại một địa điểm phục vụ các em nhỏ. Hỏi người quản lý có thể chia ra tối đa được
bao nhiêu tổ? Mỗi tổ có bao nhiêu nam và bao nhiêu nữ? Biết rằng số lượng nam và nữ phải
chia đều ở các tổ.
Dữ liệu vào: đọc từ file văn bản VN.INP
 Gồm hai số nguyên n, m cách nhau một dấu cách (1<n , m ≤10 9).
Kết quả: ghi ra file văn bản VN.OUT gồm 2 dòng
 Dòng đầu tiên ghi số lượng tổ tối đa có thể chia.
 Dòng thứ hai ghi 2 số a, b được cách nhau bởi một dấu cách tương ứng là số nam và
số nữ của mỗi tổ.
Ví dụ:
VN.INP VN.OUT
48 72 24
23
Ràng buộc:
 Có 50 % số test với m , n≤ 106;
 Có 50 % số test với m , n≤ 109.
Bài 2: Cập nhật dãy
Cho dãy số nguyên A=(a1 , a 2 , a3 , … , an ) có n phần tử, ban đầu chỉ gồm các số 0 . Xét m lệnh,
mỗi lệnh cho bởi bộ ba số nguyên i , j, k (0<i ≤ j≤ n ) thực hiện như sau: cộng các phần tử
a i , ai +1 ,… , a j với số k .
Yêu cầu: cho biết giá trị các phần tử trong dãy A sau m lệnh cho trước.
Dữ liệu vào: vào từ file văn bản UDTSEQ.INP
 Dòng thứ nhất chứa hai số nguyên dương n , m(n ≤ 105 ; m ≤10 5) .

Trang 1/3
 m dòng tiếp theo, mỗi dòng chứa ba số nguyên i , j, k tương ứng với một lệnh
5
(1 ≤i ≤ j≤ n ;∨k ∨≤10 ).
Kết quả: ghi ra file văn bản UDTSEQ.OUT gồm 1 dòng chứa n số nguyên a 1 , a2 , … an (cách
nhau bởi một dấu cách) trong dãy A sau m lệnh theo đúng thứ tự.
Ví dụ:
UDTSEQ.INP UDTSEQ.OUT
55 53657
131
252
343
114
555
Ràng buộc:
 Có 50% số test với m , n≤ 102;
 Có 25% số test với m , n≤ 10 4;
 Có 25% số test với m , n≤ 105.
Bài 3: Đếm cặp
Cho một dãy số nguyên A=( a1 , a 2 , a3 … , a n) có n phần tử (n ≥ 3).
Yêu cầu: đếm số cặp i , j¿) sao cho: i , j chia dãy đã cho thành ba đoạn ( a 1 , a2 , … , ai−1 ¿ , ¿ ¿), (
a j+ 1 , a j+2,…, a n) với điều kiện tổng các phần tử của 3 đoạn này bằng nhau.
Dữ liệu vào: từ file văn bản COUNT.INP gồm 2 dòng
 Dòng đầu tiên chứa số nguyên n là số phần tử của dãy A.
 Dòng thứ hai chứa n số nguyên a 1 , a2 , a3 … , an các phần tử của mảng A.
Kết quả: ghi ra file văn bản COUNT.OUT
 Gồm một số nguyên duy nhất là kết quả của bài toán.
Ví dụ:
COUNT.INP COUNT.OUT
5 2
12303
4 1
0 1 -1 0
3 0
418
Ràng buộc:
 Có 30% số test 3 ≤ n ≤ 102; |ai| ≤10 ,i=1 , 2 ,… , n ;
3

 Có 40% số test 3 ≤ n ≤ 103; |ai| ≤10 ,i=1 , 2 ,… , n ;


4

 Có 30% số test 3 ≤ n ≤ 105; |ai| ≤10 ,i=1 , 2 ,… , n.


5

1111

Bài 4: Tô bảng
Trang 2/3
Cho hình chữ nhật kích thước m ×n, các hàng được đánh số 1, 2, ..., m từ trên xuống dưới và
các cột được đánh số 1, 2, ..., n từ trái sang phải, ô (i , j) là ô giao của hàng i với cột j . Hình
chữ nhật con của hình chữ nhật đã cho là hình chữ nhật có tất cả các ô trùng với các ô của
hình chữ nhật ban đầu.
Ví dụ: hình chữ nhật có kích thước 2×3 có rất nhiều hình chữ nhật con trong đó có các kích
thước là 1 ×1, 1 ×2, 1×3 , 2×2và 2×3

Cô giáo dạy Toán vẽ lên bảng hình chữ nhật X có kích thước m ×n và tô trước k ô rồi đố các
bạn trong lớp tô các ô của hình chữ nhật X để sau mỗi lần tô 1 ô nếu tồn tại 1 hình chữ nhật
con chứa tất cả các ô đã tô và hình chữ nhật con này phải được tô kín các ô thì được thêm
một điểm. Sau khi tô kín tất cả các ô của hình chữ nhật X bạn nào được nhiều điểm nhất thì
thắng cuộc.
Yêu cầu: Hãy giúp cô giáo xác định điểm số lớn nhất và đếm xem có bao nhiêu phương án
tô để đạt được điểm số lớn nhất đó.
Dữ liệu vào: từ file văn bản TOBANG.INP
 Dòng đầu tiên ghi ba số nguyên dương m , n , k .
 k dòng tiếp theo, dòng thứ i ghi các số nguyên a i , bi cách nhau bởi dấu cách với ý
nghĩa ô (a i , b i) đã được tô.
Kết quả: ghi ra file văn bản TOBANG.OUT gồm hai dòng
 Dòng đầu tiên ghi số điểm cao nhất.
 Dòng thứ hai ghi số phương án tô để đạt điểm cao nhất. Vì số này có thể rất lớn, bạn
chỉ cần in ra phần dư của nó khi chia cho 1 000 000 007.
Ví dụ:
TOBANG.INP TOBANG.OUT
232 2
11 10
12
Giải thích:
Có 10 cách tô lần lượt theo số thứ tự tương ứng trong hình để được số điểm lớn nhất
là 2.
1 1 1 1 1 1
2 3 4 2 4 3 3 2 4 3 4 2 4 2 3 4 3 2

3 4 3 4
1 2 41 2 3 2 1 4 2 1 3
Ràng buộc:
 Có 25% số test với m , n≤ 100, k≤ 104 và ô ( 1 ,1 ) được tô;
 Có 25% số test với m , n≤ 100, k≤ 104 ;
 Có 50% số test với m , n≤ 4000, k≤ 105

Trang 3/3

You might also like