Tìm số tự nhiên nhỏ nhất có chữ số hàng đơn vị là D, sao cho khi chuyển chữ số hàng đơn vị lên vị trí trước chữ số đầu tiên của số đó thì được số mới gấp K lần số cũ.[r]
(1)SỞ GIÁO DỤC VÀ ĐÀO TẠO HẢI DƯƠNG
ĐỀ CHÍNH THỨC
KỲ THI CHỌN HỌC SINH GIỎI TỈNH LỚP 12 THPT NĂM HỌC 2011-2012
Môn thi: Tin học Thời gian làm bài: 180 phút
(Đề thi gồm trang)
TỔNG QUAN VỀ CÁC BÀI THI
Tên file chương trình Dữ liệu vào Dữ liệu ra
Bài 1 BAI1.PAS Màn hình
Bài 2 BAI2.PAS Bàn phím Màn hình
Bài 3 BAI3.PAS DAYSO.INP DAYSO.OUT
Bài 4 BAI4.PAS SUM.INP SUM.OUT
Bài 5 BAI5.PAS MOVE.INP MOVE.OUT
( Chương trình thí sinh viết ngơn ngữ TurBo Pascal 7.0 hoặc Free Pascal )
Hãy lập trình giải toán sau: Bài 1:Số đối xứng (2 điểm)
Tìm số nhiên N (100<N<47 000) thoả mãn: N N2 số đối xứng (Số đối xứng số viết chữ số theo thứ tự ngược lại giá trị khơng thay đổi, ví dụ số 10301 hay 2332 số đối xứng).
Kết đưa hình gồm số dịng, dịng ghi số N và N2 , số cách tối thiểu dấu cách.
Bài 2: Số chữ số tận (1.5 điểm)
Tính số chữ số tận N! = 1*2*3* *N, với số nguyên dương N≤109.
N nhập từ bàn phím, kết đưa hình gồm số nguyên số chữ số tận N! tìm được.
Ví dụ: N=12 , kết đưa hình 2. Bài 3: Các số khác (2.5 điểm)
Cho dãy gồm N số nguyên dương (N≤ 1000) Hãy kiểm tra xem có bao nhiêu số khác dãy.
Dữ liệu vào: Từ tệp DAYSO.INP gồm dòng đầu số N, dòng
sau ghi số dãy, số cách tối thiểu dấu cách.
Kết quả: Ghi tệp DAYSO.OUT dòng đầu ghi số nguyên K, số lượng
các số khác dãy Trong dịng sau ghi K số khác tìm được trong dãy, dòng ghi 15 số.
Ví dụ
(2)10
5 12 8
6
5 12
Bài Tổng số (2 điểm)
Cho số nguyên N (1 ≤ N ≤ 109) Bằng cách sử dụng chữ số liên tiếp của N (viết hệ thập phân), ta thu số nguyên khác Hãy tính tổng số nguyên này.
Ví dụ: Nếu N = 202, thu số: 2, 0, 2, 20, 02, 202 Bỏ các số nguyên trùng ta số: 2, 0, 20, 202 Khi tổng cần tìm là 2+0+20+202=224.
Dữ liệu vào: Từ tệp SUM.INP, gồm 10 dòng, dòng số nguyên
N (điều kiện : ≤ N ≤ 109) ;
Kết quả: Đưa tệp SUM.OUT, gồm 10 dịng, dịng tổng tìm được
tương ứng với dòng tệp SUM.INP.
SUM.INP SUM.OUT
202 6742
224 8360
Bài 5: Đổi chỗ (2 điểm)
Tìm số tự nhiên nhỏ có chữ số hàng đơn vị D, cho chuyển chữ số hàng đơn vị lên vị trí trước chữ số số số gấp K lần số cũ
Dữ liệu vào: Nhập từ tệp MOVE.INP gồm số nguyên D K, số
cách tối thiểu dấu cách.
Kết quả: Ghi vào tệp MOVE.OUT số tìm được, -1 khơng tìm
được số thoả mãn. Ví dụ
MOVE.INP MOVE.OUT
7 142857
Hết
-Họ tên: Số báo danh: Chữ ký giám thị 1: Chữ ký giám thị 2: HƯỚNG DẪN CHẤM BÀI THI HSG TỈNH MÔN TIN HỌC LỚP 12 THPT
(3)Bài Tìm 16 số nguyên thoả mãn:
101 10201
111 12321
121 14641
202 40804
212 44944
1001 1002001
1111 1234321
2002 4008004
10001 100020001
10101 102030201 10201 104060401
11011 121242121
11111 123454321
11211 125686521
20002 400080004
20102 404090404
Bài 2: Cho test, test 0,25 điểm (có test với giá trị N lớn )
N Số chữ số N!
890 221
1236 306
78901 19724
345 678 901 86 419 720
7*108 174 999 997
109 249 999 998
Bài 3: Cho 10 test test 0.25 điểm Chạy 10 test DAYSO.IN0123456789, cho ra kết DAYSO.OU0123456789, sau chạy chương trình chấm CHECK.PAS
Bài 4: Chạy chương trình với tệp SUM.INP gồm 10 dòng (10 test), kết ghi vào tệp SUM.OUT gồm 10 dòng, test 0.2 điểm Chạy chương trình chấm CH_SUM.PAS
SUM.INP SUM.OUT
986 193
5372 460
76 498 92 887
397 582 559 334
4 875 984 483 310
769 845 869 944 928 941 876 983 678 068 914 176 987 647 784 204 052 805 789 856 786 204 990 519 999 999 999 111 111 101
Bài 5: Cho 10 test, test 0.2 điểm Chạy chương trình với tệp
MOVE.IN0123456789, cho kết tệp MOVE.OU0123456789, sau chạy chương trình chấm CHECK.PAS
Test D K Số cần tìm
1 230 769
(4)3 153 846
4 128 205
5 179 487
6 -1
7 139 240 506 329
8 421 052 631 578 947 368
9 315 789 473 684 210 526