Tải bản đầy đủ (.doc) (3 trang)

Tin học trẻ Bình Định lần 16 - Bảng C

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 (124.21 KB, 3 trang )

TỈNH ĐOÀN BÌNH ĐỊNH
HỘI THI TIN HỌC TRẺ
LẦN THỨ XVI – NĂM 2010
Bảng C: TRUNG HỌC PHỔ THÔNG
Thời gian làm bài: 120 phút
B. PHẦN LẬP TRÌNH
Chú ý:

Các file dữ liệu vào *.INP phải được đặt trong thư mục " \TRE10\"

Các file bài làm *.PAS và dữ liệu ra *.OUT đặt trong thư mục riêng của từng thí
sinh, ví dụ \TRE10\SBD01\
Bài 1: Mật mã Caesar
Phương pháp mật mã của Caesar là dịch chuyển từng ký tự của thông điệp cần mã hoá sang
phải k ký tự trong bảng chữ cái tiếng Anh (A, B, C, …, Z), trong đó k là một số nguyên cho
trước, gọi là khoá của mật mã. Trong trường hợp dịch chuyển vượt quá chữ cái cuối cùng thì
sẽ quay lại đầu. Dấu cách được chuyển thành dấu $.
Ví dụ: Với k = 3 thì A → D, B → E, …, W → Z, X → A, Y → B,…
Yêu cầu: Cho một chuỗi kí tự S gồm các chữ cái in hoa và dấu cách và một số nguyên k (0

k

26). Hãy tìm chuỗi kí tự T đã được mã hoá theo phương pháp trên.
Tên file bài làm: BAI1.PAS
Dữ liệu vào: Cho trong file BAI1.INP, gồm nhiều dòng.
– Dòng dầu là một chuỗi kí tự có độ dài tối đa 80 kí tự.
– Các dòng sau, mỗi dòng ghi một số nguyên k.
Dữ liệu ra: Ghi vào file BAI1.OUT, gồm nhiều đoạn ngăn cách nhau bởi dòng chứa dấu *.
Mỗi đoạn ghi chuỗi mã hoá T tương ứng với khoá k trong file BAI1.INP.
Ví dụ:
BAI1.INP BAI1.OUT


HOI THI
1
3
IPJ$UIJ
*************
KRL$WKL
*************
Bài 2: Lưới
Cho một lưới ô vuông gồm M dòng, N cột. Ở mỗi ô của lưới chỉ chứa số 0 hoặc 1. Mỗi ô
vuông được xác định bởi cặp số (x; y) trong đó x là tọa độ dòng, y là tọa độ cột. Từ mỗi ô
vuông có thể di chuyển sang ô vuông chung cạnh. Một vùng là một tập hợp các ô vuông kề
cạnh với nhau và có giá trị bằng nhau. Các ô vuông kề cạnh với vùng và có giá trị khác với giá
trị các ô trong vùng thì không thuộc vùng đó.
Ví dụ: Hình dưới đây là một lưới ô vuông 4 x 6. Hai ô (1; 2) và (3; 4) thuộc cùng một vùng.
Hai ô (2; 3) và (1; 6); (1; 2) và (1; 3) là không cùng thuộc một vùng.
1 1 0 0 1 1
0 1 1 0 0 1
0 0 1 1 0 0
1 1 0 0 0 0
Yêu cầu: Cho trước hai ô vuông (x1; y1) và (x2; y2). Hãy cho biết hai ô vuông này có thuộc
cùng một vùng hay không.
Tên file bài làm: BAI2.PAS
Dữ liệu vào: Cho trong file BAI2.INP, gồm nhiều dòng:
+ Dòng đầu tiên ghi 2 số M, N (1 ≤ M

100, 1 ≤ N

100).
+ M dòng tiếp theo, mỗi dòng ghi N số 0 hoặc 1 tương ứng với giá trị các ô.
+ Các dòng tiếp theo, mỗi dòng ghi 4 số x1, y1, x2, y2 là hai cặp tọa độ của hai ô

vuông cần kiểm tra thuộc hay không thuộc một vùng (1 ≤ x1, y1, x2, y2

100)
(các số trên cùng một dòng ghi cách nhau ít nhất một dấu cách)
Dữ liệu ra: Ghi vào file BAI2.OUT, gồm nhiều dòng. Mỗi dòng ghi một số nguyên, nếu hai ô
thuộc cùng một vùng thì ghi số 1; hai ô không cùng thuộc một vùng thì ghi số 2.
Ví dụ:
BAI2.INP BAI2.OUT
4 6
1 1 0 0 1 1
0 1 1 0 0 1
0 0 1 1 0 0
1 1 0 0 0 0
1 2 3 4
2 3 1 6
1
2
–––––––––––––––––––––––––––––––––
TỈNH ĐOÀN BÌNH ĐỊNH HỘI THI TIN HỌC TRẺ TỈNH BÌNH ĐỊNH
LẦN THỨ XVI – NĂM 2010
ĐÁP ÁN ĐỀ THI Bảng C – TRUNG HỌC PHỔ THÔNG
B. Phần lập trình:
Bài 1: (10 điểm) Đúng mỗi test: 2 điểm
BAI1.INP BAI1.OUT
TIN HOC TRE BINH DINH
1
5
10
25
26

UJO$IPD$USF$CJOI$EJOI
*******************
YNS$MTH$YWJ$GNSM$INSM
*******************
DSX$RYM$DBO$LSXR$NSXR
*******************
SHM$GNB$SQD$AHMG$CHMG
*******************
TIN$HOC$TRE$BINH$DINH
*******************
Bài 2: (10 điểm) Đúng mỗi test: 2 điểm
BAI2.INP BAI2.OUT
10 10
1 1 1 0 1 1 1 1 0 1
1 0 1 0 0 1 0 1 0 0
1 0 1 0 1 1 0 1 0 1
1 1 1 1 0 1 1 1 1 0
0 1 0 0 0 0 1 0 0 0
1 1 1 0 1 1 1 1 0 1
1 0 1 0 0 1 0 1 0 0
1 0 1 0 1 1 0 1 0 1
1 1 1 1 0 1 1 1 1 0
0 1 0 0 0 0 1 0 0 0
2 3 2 5
2 3 9 4
2 3 8 5
5 8 5 8
7 10 4 10
2
1

2
1
1
––––––––––––––––––––

×