Tổng quan đề thi:chương trình Tên file dữ liệu vào Tên file Kết quả ra Điểm Thời gian Chú ý: Thí sinh làm bài trên ngôn ngữ lập trình C phần mở rộng tên file chương trình là ‘CPP’.. Bài
Trang 1SỞ GIÁO DỤC VÀ ĐÀO TẠO HÀ NỘI
CỤM TRƯỜNG THPT
BA ĐÌNH – TÂY HỒ
ĐỀ THI OLYMPIC NĂM HỌC 2011 - 2012
Môn Tin học – Lớp 10 Ngày thi: 14/03/2012
Thời gian làm bài 150 phút, không kể thời gian giao đề.
Đề thi gồm có 02 trang.
ĐỀ CHÍNH THỨC
Trang 2Tổng quan đề thi:
chương trình
Tên file
dữ liệu vào
Tên file Kết quả ra Điểm
Thời gian
Chú ý: Thí sinh làm bài trên ngôn ngữ lập trình C phần mở rộng tên file chương trình là ‘CPP’.
Bài 1: Tổng các chữ số
Viết chương trình nhập vào số nguyên dương N và tính tổng các chữ số là số lẻ của
số N?
Dữ liệu vào trong file văn bản “Bai1.inp” có dạng:
Một dòng duy nhất chứa số N (N tối đa 100 chữ số)
Kết quả cho ra file văn bản “Bai1.out” có dạng:
Một dòng duy nhất chứa tổng các số là số lẻ của số N
Ví dụ:
( Có 50% số test N<=2 tỷ)
Bài 2: Tổng hai phân số
Cho hai phân số
b
a
và
d
c
, với a, b, c, d nguyên dương 2 byte Hãy viết chương trình tính tổng hai phân số đã cho, kết quả là một phân số đã được tối giản?
Dữ liệu vào trong file văn bản “Bai2.inp” có dạng:
- Dòng đầu chứa hai số a, b
- Dòng thứ hai chứa hai số c, d
(mỗi số cách nhau một dấu cách)
Kết quả cho ra file văn bản “Bai2.out” có dạng:
Một dòng duy nhất chứa tử số và mẫu số của phép cộng hai phân số đã cho
(hai số cách nhau một dấu cách).
Ví dụ:
1 3
5 12
3 4
( Có 50% số test a,b,c,d <= 500)
Trang 3Bài 3: Đếm số Fibonaci
Cho dãy số A có N phần tử nguyên 2 byte Viết chương trình đếm xem trong dãy A
có bao nhiêu số Fibonaci (F) khác nhau, biết rằng: F1 = 1; F2 = 1; Fi = Fi-1 + Fi-2, với i>=3.
Dữ liệu vào trong file văn bản “Bai3.inp” có dạng:
- Dòng đầu chứa số N (1<N<=10.000)
- Dòng thứ hai chứa các phần tử của dãy A (mỗi số cách nhau một dấu cách)
Kết quả cho ra file văn bản “Bai3.out” có dạng:
Một dòng duy nhất chứa số lượng số Fibonaci khác nhau có trong dãy A
Ví dụ:
10
5 4 7 3 2 8 1 9 1 5
5
( Có 50% số test N<=1.000)
Bài 4: Đếm hình chữ nhật
Cho một ma trận A kích thước MxN, các phần tử A[i,j] bằng 0 hoặc bằng 1, các ô
số 1 liền cạnh nhau khép kín có thể tạo thành hình chữ nhật đậm đặc – toàn là số 1 hoặc
hình chữ nhật bị rỗng ở trong (ở trong lòng hình chữ nhật có các số 0) Hãy viết chương
trình đếm xem có bao nhiêu hình chữ nhật như trên, trong đó có bao nhiêu hình chữ nhật
đậm đặc (loại 1) và bao nhiêu hình chữ nhật rỗng ở trong có duy nhất một hình chữ nhật chứa toàn số 0 (loại 2)?
Dữ liệu vào trong file văn bản “Bai4.inp” có dạng:
- Dòng đầu chứa 2 số M, N (1<M,N<=200)
- M dòng tiếp theo thể hiện ma trận A
(mỗi số cách nhau một dấu cách)
Kết quả cho ra file văn bản “Bai4.out” có dạng:
- Dòng đầu chứa số lượng các loại hình chữ nhật
- Dòng thứ hai chứa số lượng các hình chữ nhật loại 1
- Dòng thứ ba chứa số lượng các hình chữ nhật loại 2
Ví dụ:
10 10
1 1 0 0 0 1 0 0 0 0
1 1 0 1 1 1 0 0 0 0
0 0 0 0 0 0 1 1 0 0
0 0 1 1 1 1 0 0 0 0
0 0 1 0 0 1 0 0 0 0
0 0 1 1 1 1 0 0 0 0
0 0 0 0 0 0 0 0 0 0
1 0 0 1 1 1 1 1 1 0
0 0 0 1 0 1 1 0 1 0
0 0 0 1 1 1 1 1 1 0
5 3 1
( Có 50% số test M,N<=100)
-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.
Họ tên thí sinh:………SBD…………