Tuyển tập các đề và đáp án HSG tin học

255 982 6
Tuyển tập các đề và đáp án HSG tin học

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trong quá trình 15 năm giảng dạy môn tin học và hướng dẫn học sinh đi thi HSG cấp huyện cấp tỉnh tôi có sưu tầm một số đề hay giúp các thầy cô có nhu cầu tải về để hướng dẫn học sinh giải nhằm rèn cho các em kỹ năng lập trình.

ĐỀ THI HỌC SINH GIỎI TRƯỜNG MÔN: TIN HỌC ĐỀ SỐ Thời gian: 120 phút Bài Số bền Năm 1973, nhà Toán học Neil Sloan đưa khái niệm độ bền số nguyên không âm N sau: • Nếu N có chữ số độ bền N • Nếu N có từ chữ số trở lên độ bền N độ bền số nguyên tích chữ số N cộng Cho N, tính độ bền N Dữ liệu vào từ file văn bản: persist.inp Dòng 1: Số nguyên N (0 ≤ N ≤ 2.000.000.000) Kết ghi file văn bản: persist.out Dòng 1: Số ngun độ bền N Ví dụ persist.inp 99 persist.out Giải thích Doben(99)=Doben(81)+1=Doben(8)+1+1=0+1+1=2 Bài Đổi giày Bờm chủ cửa hiệu bán giày Một ngày nọ, Bờm kiểm tra kho thấy kho lại 2*N giày, có N giày chân trái với kích thước a 1, a2, …, aN, N giày chân phải với kích thước b 1, b2, …, bN Hai giày hợp thành đơi chúng cặp trái - phải có kích thước Bờm định mang số giày đến nhà sản xuất để đổi Hãy xác định giúp Bờm số giày cần đổi cậu ta muốn cửa hiệu bán N đôi giày Dữ liệu vào từ file văn bản: shoes.inp Dòng 1: Số nguyên N (1 ≤ N ≤ 100) Dòng 2: N số nguyên a1, a2, …, aN (1 ≤ ≤ 1000, i = 1, 2,…, N) Dòng 3: N số nguyên b1, b2, …, bN (1 ≤ bi ≤ 1000, i = 1, 2,…, N) Kết ghi file văn bản: shoes.out Dòng 1: Số nguyên số giày cần đổi Ví dụ shoes.inp shoes.out 131 Giải thích Đổi giày chân trái kích thước thành giày chân trái kích thước đổi giày chân phải kích thước thành giày chân phải kích thước 321 Bài Đối xứng Một số nguyên gọi số đối xứng viết dạng biểu diễn thập phân số theo chiều ngược lại thu số Cho số ngun dương N có khơng q 100 chữ số Hãy xác định số nguyên đối xứng nhỏ lớn N Dữ liệu vào từ file văn bản: nextpal.inp Dòng 1: Số nguyên N Kết ghi file văn bản: nextpal.out Dòng 1: Số nguyên kết Ví dụ nextpal.inp Nextpal.out 99 101 Hướng dẫn giải Câu 1: Tư tưởng giải thuật: - Xây dựng hàm tính tích chữ số N - Khi N>9 tăng d, đồng thời gán N:=tich(N); - Ra ngồi in d (chính độ bền N) Bài giải: Var f,g:text; d,n:longint; Function tich(x:longint):longint; Var s,a:longint; Begin s:=1; repeat a:=x mod 10; x:=x div 10; s:=s*a; until x=0; tich:=s; End; BEGIN Assign(f,'persist.inp'); Reset(f); Assign(g,'persist.out'); Rewrite(g); Read(f,n); d:=0; While n>9 begin inc(d); n:=tich(n); end; Write(g,d); Close(g); Close(f); END Câu 2: Tư tưởng thuật giải: - Xét dày bên trái - Tìm dày bên phải trùng với dày bên trài xét, có trùng đánh dầu dày đó, khơng có trùng xét chiéu - Đếm số dày chưa đánh dấu bên phải số dày phải đem đổi Bài giải: Var f,g:text; n,j,i,d:longint; a,b:array [1 1000] of longint; ĐỀ THI HỌC SINH GIỎI TỈNH MÔN: TIN HỌC ĐỀ SỐ Thời gian: 120 phút Bài 1: (6điểm) PHẦN TỬ YÊN NGỰA Cho mảng hai chiều có kích thước MxN số ngun Phần tử A[I,j] gọi phần tử yên ngựa phần tử nhỏ hàng I đồng thời phần tử lớn cột j Em lập chương trình tìm phân tử yên ngựa mảng A Dữ liệu vào: Cho file PTYN.INP gồm - Dòng gồm hai số M,N ( ≤ M; N ≤ 100) - M dòng tiếp theo, dòng gồm có N số ngun mảng A (các giá trị cách khoảng cách) Dữ liệu ra: Ghi file PTYN.OUT vị trí phân tử n ngựa (nếu có) dòng thơng báo “Khơng có phần tử n ngựa” Ví dụ: PTYN.INP PTYN.OUT 33 (2,2) 15 55 76 Hoặc PTYN.INP PTYN.OUT 33 Khong co phantu yen ngua 15 10 55 76 Bài 2: (7 điểm) TỔNG CÁC SỐ FIBONACI Dãy Fibonaci dãy gồm số: 1; 1; 2; 3; 5; 8; … xác định công thức sau: F1=1; F2=1; Fi=Fi-1+Fi-2 với i>2 Em biểu diễn số tự nhiên tành tổng số Fibonaci khác Dữ liệu vào: Cho file FIBO.INP chứa số N (N ≤ 2000000000) Dữ liệu ra: ghi vào file FIBO.OUT biễu diễn số N thành tổng số Fibonaci khác Ví dụ FIBO.INP 129 FIBO.OUT 129=89+34+5+1 Hoặc FIBO.INP FIBO.OUT 8=8 Bài (7 điểm) CHỌN PHẦNTHƯỞNG Trong kỳ thi học sinh giỏi môn tin học, em người đạt giải đặc biệt Ban tổ chức cho phép em chọn phần thưởng cho Các phần thưởng xếp thành dãy dược đánh dấu từ số đấn số N (0 ≤ N ≤ 10000), phần thưởng thứ I có giáo trị (1 ≤ ≤ 100) Em phép chọn phần thưởng cho theo ngun tắc khơng chọn phần thưởng liên tiếp dãy Viết chương trình để máy tính hướng dẫn em chọn phần thưởng cho tổng giá trị phần thưởng nhận lớn Dữ liệu vào: cho file PTHUONG.INP gồm dòng: - Dòng số phần thưởng N - N dòng giá trị phần thương Dữ liệu ra: ghi vào file PTHUONG.OUT gồm dòng: - Dòng ghi tổng giá trị lớn phần thưởng chọn - Dòng ghi vị trí phần thưởng chọn theo thứ tự tăng dần Ví dụ: PTHUONG.INP PTHUONG.OUT 23 1245 Hoặc PTHUONG.INP PTHUONG.OUT 32 12467 10 Đáp án Bài 1: (6điểm) PHẦN TỬ YÊN NGỰA program yenngua; uses crt; type mang=array[1 100,1 100] of integer; var a:mang; n,i,j,d:integer; f:text; procedure nhap; var i,j:integer; begin assign(f,'PTYN.inp'); reset(f); readln(f,n); for i:=1 to n begin for j:=1 to n read(f,a[i,j]); readln(f); end; end; function maxc(h:integer):integer; var max, i:integer; begin max:=a[1,h]; for i:=1 to n if maxa[h,i] then min:=a[h,i]; minh:=min; end; begin clrscr; nhap; d:=0; 10 while (j0)and (c>0) then Begin Writeln(‘Ba so lap canh cua tam giac’); p:=(a+b+c)/2; s:= sqrt(p*(p-a)*(p-b)*(p-c)); Writeln(‘Dien tich cua tam giac la:’, s); End 253 Else Writeln(‘Ba so khong lap canh cua tam giac’); Readln; End Câu (4đ) Định mức tiền điện hàng tháng hộ gia đình sau: + 50 kWh có giá 600vnd/1kWh + 50 kWh có giá 1004vnd/1kWh + 50 kWh có giá 1214vnd/1kWh Viết chương trình nhập số điện tiêu thụ cũ, số điện tiêu thụ Hãy tính in số điện tiêu thụ tiền điện phải trả tháng hộ gia đình Mức giá chưa bao gồm thuế giá trị gia tăng (VAT) Hãy viết chương trình tính thuế VAT 10% Ví dụ : hộ gia đình A sử dụng 145kWh tháng phải trả 148.313đ (trong đó, thuế 10% 13.483đ, tiền chưa thuế 134.830đ) Program tiendien; Var diennang,socu,somoi,sotien,thue_VAT:real; Begin Write('Nhap vao chi so cu: '); Readln(socu); Write('Nhap vao chi so moi: '); Readln(somoi); if socu>somoi then writeln('Ban da nhap sai') Else Begin 254 diennang:=somoi-socu; if diennang

Ngày đăng: 07/06/2018, 16:02

Từ khóa liên quan

Mục lục

  • Bài 1. Số bền

  • Bài 2. Đổi giày

  • Bài 3. Đối xứng

  • Cho dãy số nguyên A gồm N phần tử a1, a2, ..., aN và dãy số nguyên B gồm M phần tử b1, b2, ..., bM. Các phần tử trong một dãy số có giá trị khác nhau từng đôi một.

  • (1 ≤ ai, bj ≤ 2109; 1 ≤ N ≤ 100; 1 ≤ i ≤ N; 1 ≤ M ≤ 100; 1 ≤ j ≤ M).

  • Dãy C được gọi là dãy con của dãy A nếu dãy C nhận được từ dãy A bằng cách xóa đi một số phần tử và giữ nguyên thứ tự của các phần tử còn lại.

  • Nếu dãy C là dãy con của dãy A và cũng là dãy con của dãy B thì dãy C được gọi là dãy con chung của hai dãy A và B.

  • Yêu cầu: Hãy tìm dãy C là dãy con chung của hai dãy A và B sao cho số lượng phần tử của dãy C là lớn nhất.

  • Dữ liệu vào: Cho trong file văn bản DAYCON.INP có cấu trúc như sau:

  • - Dòng 4: Ghi M số nguyên là giá trị của các phần tử trong dãy B, các số được ghi cách nhau ít nhất một dấu cách.

  • Dữ liệu ra: Ghi ra file văn bản DAYCON.OUT theo cấu trúc như sau:

  • - Dòng 1: Ghi số nguyên dương K là số lượng phần tử của dãy C.

  • - Dòng 2: Ghi K số nguyên là giá trị của các phần tử trong dãy C, các số được ghi cách nhau một dấu cách.

  • - Dòng 3: Ghi K số nguyên dương lần lượt là chỉ số của các phần tử trong dãy A tương ứng với các giá trị của phần tử đó trong dãy C, các số được ghi cách nhau một dấu cách.

  • - Dòng 4: Ghi K số nguyên dương lần lượt là chỉ số của các phần tử trong dãy B tương ứng với các giá trị của phần tử đó trong dãy C, các số được ghi cách nhau một dấu cách.

  • Ví dụ:

  • Cho dãy số nguyên A gồm N phần tử a1, a2, ..., aN và dãy số nguyên B gồm M phần tử b1, b2, ..., bM. Các phần tử trong một dãy số có giá trị khác nhau từng đôi một.

  • (1 ≤ ai, bj ≤ 2109; 1 ≤ N ≤ 100; 1 ≤ i ≤ N; 1 ≤ M ≤ 100; 1 ≤ j ≤ M).

  • Dãy C được gọi là dãy con của dãy A nếu dãy C nhận được từ dãy A bằng cách xóa đi một số phần tử và giữ nguyên thứ tự của các phần tử còn lại.

  • Nếu dãy C là dãy con của dãy A và cũng là dãy con của dãy B thì dãy C được gọi là dãy con chung của hai dãy A và B.

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan