Docstoc

on_thi_HSG_Tin_5889_92555361_2_

Document Sample
on_thi_HSG_Tin_5889_92555361_2_ Powered By Docstoc
					CAÙC BAØI TAÄP PASCAL HAY DAØNH CHO HS LÔÙP 9
BAØI 1 : XẾP GẠCH. Minh rất thích trò chơi xếp các chiếc hộp có hình viên gạch. Minh đặt các viên gạch chồng lên nhau và xây thành nhiều chồng có độ cao khác nhau. Minh khoe với chị rằng “Chị trông, em đã xây được một bức tường”. Chị của Minh trả lời “Em phải xếp các viên gạch có độ cao giống nhau mới được gọi là một bức tường”. Sau khi nghe chị nói như vậy nó cân nhắc một tí và cho rằng ý kiến ấy là đúng. Vì vậy em bắt đầu tiến hành sắp xếp lại các chồng gạch lần lượt từng chiếc một cho đến khi hoàn thành công việc. Khi công việc đã hoàn tất, Minh mệt lả và muốn có bạn nào giúp Minh di chuyển các viên gạch với số lần ít nhất.

Các chiếc hộp trước và sau khi xếp Yêu cầu: Hãy lập trình đưa ra số lần di chuyển ít nhất của các viên gạch sao cho từ các chồng gạch có độ cao khác nhau trở thành các chồng gạch có độ cao bằng nhau; lần lượt từng chiếc một cho đến khi hoàn thành công việc. Dữ liệu vào: có cấu trúc sau: - dòng đầu tiên là số n, n là số các chồng gạch, - dòng tiếp theo lần lượt là các hi, độ cao của chồng gạch thứ i. (1≤ n ≤ 50; 1≤ hi ≤ 100; i = 1..n). Lưu ý rằng số viên gạch bao giờ cũng chia hết cho số chồng gạch. Dữ liệu ra: chỉ có một dòng chứa một số nguyên dương là kết quả tính toán số lần ít nhất sau khi xếp lại các chồng gạch. Nếu không có kết quả cũng phải ghi rõ “KHONG CAN DI CHUYEN LAN NAO” Ví dụ: với hình trên ta có dữ liệu vào, ra: Input 6 5 2 4 1 7 5 7 9999999 Khong can di chuyen lan nao 5 Output

BAØI 2: SAÉP SOÁ TRONG XAÂU 1. Nhaäp moät xaâu s bao goàm soá vaø kí töï, in ra xaâu ñaõ saép xeáp soá theo thöù töï taêng daàn coøn vò trí caùc kí töï vaãn giöõ nguyeân? Input Output abc6ghj7kkkkk1hhhh9 abc6ghj7kkkkk1hhhh9 BAØI 3: KYÙ TÖÏ NHIEÀU NHAÁT Nhaäp vaøo xaâu s (az), in ra kyù töï xuaát hieän nhieàu laàn nhaát trong xaâu vaø soá laàn xuaát hieän? Neáu coù nhieàu tröôøng hôïp thì in ra tröôøng hôïp ñaàu tieân. ví duï: Input Output abcaabca a4 bcbsaaba b3 BAØI 4: TÖØ DAØI NHAÁT In ra töø daøi nhaát trong moät xaâu nhaäp töø baøn phím vaø soá kyù töï cuûa töø naøy? Neáu coù nhieàu töø coù ñoä daøi baèng nhau thì in ra heát. ví duï: Input Output Nguyen van truong truong 4 Truong thich hoc pascal Truong pascal 5 BAØI 5: DAÕY CON LÔÙN NHAÁT
Cho một mảng số nguyên gồm n phần tử. Tìm dãy con gồm m phần tử (mn) sao cho dãy con này có tổng lớn nhất. (Dãy con là dãy các phần tử liên tiếp nhau trong mảng). nhập n, nhập các phần tử của dãy, nhập m, in ra dãy con có m phần tử.

Input 8 43528796 3 BAØI 6: XOAÙ KYÙ TÖÏ TRUØNG

Output 879

Vieát chöông trình nhaäp vaøo 1 xaâu vaø xoaù heát caùc kyù töï lieân tieáp gioáng nhau trong xaâu chæ chöøa laïi moät?
Input cccccaaannnnooo yeseeeyysss Output cano yeseys

BAØI 7: SOÁ ÑÔN ÑIEÄU

Caùc soá nguyeân döông 3748, 58, 859, 32435465768 ñöôïc goïi laø caùc soá ñôn ñieäu do neáu quan saùt caùc chöõ soá cuûa soá naøy , ta thaáy chuùng luaân phieân taêng giaûm hoaëc giaûm taêng. Chaúng haïn: 3 < 7 > 4 < 8 vaø 3 > 2 < 4 > 3 < 5 > 4 < 6 > 5 < 7 > 6 < 8 Soá chæ coù moät chöõ soá laø soá ñôn ñieäu chieàu daøi 1. Haõy vieát chöông trình xaùc ñònh soá chöõ soá ñaàu tieân lôùn nhaát taïo thaønh soá ñôn ñieäu cuûa moät soá cho tröôùc. Nhaäp vaøo moät soá nguyeân döông khoâng quaù 75 chöõ soá. Xuaát ra soá chöõ soá ñaàu tieân lôùn nhaát taïo thaønh soá ñôn ñieäu .

Input 37486398 859672534163 BAØI 8: SOÁ NGUYEÂN TOÁ GHEÙP

Output 5 12

Xét dãy A các số nguyên tố 2, 3, 5, 7, 11, 13, 17, 19,... và dãy B gồm các số thu được từ dãy A bằng cách ghép hai số liên tiếp trong A: 23, 57, 1113, 1719, ... Trong dãy B có những phần tử là số nguyên tố. Chẳng hạn 23, 3137, 8389, 157163... Các số nguyên tố trong dãy B gọi là số nguyên tố ghép. Yêu cầu: Cho trước số nguyên dương K ≤ 500, hãy tìm số nguyên tố ghép thứ K.

Input 2 BAØI 9: TOÅNG 2 SOÁ NGUYEÂN TOÁ

Output 3137

Trong một bức thư mà Christian Goldbach gửi cho Euler, ông đã đề cập đến phỏng đoán của mình: Mọi số tự nhiên chẵn lớn hơn 2 đều là tổng của 2 số nguyên tố. Hãy lập chương trình để kiểm chứng phỏng đoán của Goldbach. Yêu cầu: - Dữ liệu vào từ file GB.INP gồm nhiều dòng, dòng đầu là số test (<10), các dòng tiếp theo mỗi dòng ghi 1 số tự nhiên chẵn lớn hơn 2 (<32000) - Dữ liệu ra là file GB.OUT gồm các dòng (mỗi dòng ứng với 1 test) - mỗi dòng gồm 2 số nguyên tố cách nhau ít nhất 1 dấu cách có tổng bằng số đã cho (hoặc không tìm được – ghi là “khong”).

Input
3 8 12 5

Output
35 57 23

BAØI 10: ÑÒNH LYÙ 6174

Dãy 6174 được tạo theo cách sau. Số hạng đầu tiên của dãy là số nguyên dương n1 gồm bốn chữ
số (bốn chữ số của số hạng đầu tiên này không đồng thời bằng nhau). Hai số mới (a và b ) được
1 1

tạo thành từ số đầu tiên của dãy. Số thứ nhất a1 có được bằng cách sắp xếp các chữ số của n1 theo thứ tự giảm dần và số thứ nhì b1 có được bằng cách sắp xếp các chữ số của n1 theo thứ tự tăng

dần. Số thứ nhì n của dãy là hiệu a - b . Tiếp tục, hai số a và b được tạo thành từ n tương tự
2 1 1 2 2 2

như a và b và số thứ ba n3 của dãy 6174 là hiệu a - b , và cứ thế tiếp tục. Dãy số kết thúc khi các số hạng của dãy bắt đầu lặp lại (nghĩa là các phần tử của dãy đôi một khác nhau). Chữ số 0 ở
1 1 2 2

đầu số (vị trí thứ nhất tính từ bên trái) vẫn có nghĩa. Định lý 6174 phát biểu rằng số hạng cuối của dãy số xây dựng như trên luôn là số 6174. Chẳng hạn, xét dãy mà số hạng đầu tiên (n1) là 7815. Ta có: 8751 - 1578 = 7173 (n ) 7731 - 1377 = 6358 (n ) 6543 - 3456 = 3087 (n4) 8730 - 0378 = 8352 (n5) 8532 - 2358 = 6174 (n6) Bài toán:
2 3

Cho trước số hạng đầu tiên của dãy 6174. Cho biết chỉ số của số hạng cuối (là số hạng 6174) của

dãy. Dữ liệu:
Cho trong tập tin văn bản DL6174.INP, gồm một dòng gồm số nguyên dương duy nhất là số

hạng đầu tiên của dãy số 6174. Kết quả:
Cho trong tập tin văn bản DL6174.OUT, gồm một dòng gồm số nguyên dương duy nhất là số

hiệu của số hạng cuối của dãy số 6174 mà số hạng đầu cho trong tập tin dữ liệu. Ví dụ:
DL6174.INP DL6174.OUT

7815

6

BAØI 11: DIEÄN TÍCH CAÙC HÌNH Cho hình chữ nhật ABCD có chiều dài AB là a (cm), chiều rộng AD là b (cm) với a, b là các số nguyên dương không vượt quá 10000. Một điểm M trên đoạn BC, một điểm N trên đoạn CD sao cho độ dài (tính bằng cm) các đoạn BM, CN bằng nhau và là số nguyên không âm.
A B M

C D N Yêu cầu: 1. Biết độ dài BM, tính diện tích hình chữ nhật ABCD và diện tích tam giác MCN. 2.Tìm giá trị lớn nhất và giá trị nhỏ nhất của diện tích tam giác AMN khi M, N thay đổi. Dữ liệu vào: Dữ liệu của bài toán cho trong tệp tin DIENTICH.INP gồm ba số a, b, x (x  b  a, x là độ dài BM trong yêu cầu 1) được ghi trên cùng một dòng theo đúng thứ tự trên, hai số liên tiếp cách nhau một khoảng trắng. Dữ liệu ra: Kết quả ghi ra màn hình (hoặc ghi ra file DIENTICH.OUT) trên 5 dòng: - Dòng đầu là ba số a, b và x.

- Dòng thứ hai là diện tích hình chữ nhật ABCD. - Dòng thứ ba là diện tích tam giác MCN - Dòng thứ tư là giá trị lớn nhất của diện tích tam giác AMN - Dòng thứ năm là giá trị nhỏ nhất của diện tích tam giác AMN (Các giá trị diện tích được ghi trong dạng thập phân với 1 chữ số sau dấu phẩy). Ví dụ:
DIENTICH.INP 10 6 2 Kết quả trên màn hình (hoặc file DIENTICH.OUT) 10 6 2 60.0 4.0 30.0 17.5

Hạn chế kỹ thuật: - Ghi tên file bài làm là DIENTICH.PAS. - Dữ liệu vào là chính xác không cần kiểm tra. - Nếu không nhập được dữ liệu vào từ file, thí sinh có thể nhập dữ liệu vào từ bàn phím - Có khoảng 60% số bộ test có a < 100.