1. Trang chủ
  2. » Trung học cơ sở - phổ thông

Đề thi học sinh giỏi tin lớp 12

9 193 1

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 9
Dung lượng 60 KB

Nội dung

Sở giáo dục - đào tạo QB Trờng thpt chuyên qb SBD: Đề thi đề nghị phút Kỳ thi chọn họcSinh Giỏi lớp 12 Năm học 2007-2008 Môn: Tin học Thời gian làm bài: 180 Đề ra: Sử dụng ngôn ngữ lập trình Turbo Pascal để lập trình giải toán sau: Câu (3,0 điểm) Sắp xếp xâu - Sapxep.PAS Một xâu kí tự S bao gồm N (N < 255) kí tự đợc lấy từ tập kí tự sau: A, B, C Xâu S đợc tạo từ xâu S cách đổi chỗ kí tự vị trí i kí tự vị trí j xâu S cho xâu S đợc tăng dần theo thứ tự từ điển Hãy tìm cách tạo xâu S nh cho số lần đổi chỗ kí tự vị trí i kí tự vị trí j xâu S Dữ liệu vào: Cho file sapxep.inp có cấu trúc nh sau: - Dòng 1: Ghi xâu S Dữ liệu ra: Ghi file sapxep.out theo cấu trúc nh sau: - Dòng 1: Ghi số m số lần đổi chỗ kí tự vị trí i kí tự vị trí j xâu S - m dòng dòng ghi số i j cách kí tự trắng, thể việc đổi chỗ kí tự vị trí i kí tự vị trí j xâu S Ví dụ: Sapxep.inp BBACCCBCA Sapxep.out 4 9 Câu 2: (3 điểm) Chuỗi hạt - chuoihat.PAS Trong file văn có tên CHUOIHAT.INP có biểu diễn chuỗi hạt, hạt nhận số màu mã số từ đến 30 Lập trình tìm điểm để cắt chuỗi căng thẳng cho hạt màu hai đầu lớn Dữ liệu vào: Chuỗi đợc thể file CHUOIHAT.INP dới dạng hình thoi, dòng dòng cuối có hạt dòng Mỗi dòng lại có hạt cách kí tự trắng (Chuỗi hạt có tối đa 1000 hạt) Các hạt chuỗi đợc đánh số hạt theo chiều kim đồng hồ Kết quả: ghi file CHUOIHAT.OUT - Ghi số i j t số cách kí tự trắng (i j vị trí cắt chuỗi hạt, t số lợng hạt màu lớn hai đầu) Ví dụ: chuoihat.INP chuoihat.OUT 7 8 8 Câu 3: (4 điểm) Kiến leo quanh ống trụ - TSP.PAS Cho bảng chữ nhật m dòng n cột gồm m x n ô, ô chứa số nguyên dơng bé 255 Ngời ta cuộn hình chữ nhật lại thành hình trụ cho mép mép dới hình chữ nhật trùng (nói cách khác: dòng dòng m liền kề nhau) Một kiến bò từ ô thuộc cột 1, muốn tới ô thuộc cột n cho tổng số đờng qua lớn phải theo nguyên tắc: đợc sang cột kề bên phải hàng chênh lệch hàng Dữ liệu vào: lấy từ file văn TSP.INP - Dòng đầu số m, n cách kí tự trắng (m, n Luudem then Begin Luudem:=sau+dau; Luucat:=Top+1; end; end; (*****************) Procedure Write_Data; Var f:Text; Begin Assign(f,fo); ReWrite(f); if Luucat > n then Write(f,n,' ' ,1) else Write(f,Luucat-1,' ' ,Luucat); Write(f,' ',Luudem); Close(f); end; (*****************) Begin Read_Data; Processing; Write_Data; end Câu 3: (4 điểm) Kiến leo quanh ống trụ - TSP.PAS Program Kien_leo_quanh_ong_tru; Const MaxN=101; fi='TSP.inp'; fo='TSP.out'; Type bb=Byte;ww=Word;ii=Integer; ll=Longint; mmc=Array[1 MaxN] of bb; mhc=Array[0 MaxN,0 MaxN] of ll; Var QH:mhc; n,m:bb; (*****************) Procedure Read_Data; Var f:Text; i,j:bb; Begin Assign(f,fi); Reset(f); Readln(f,m,n); for i:=1 to m For j:=1 to n Read(f,QH[i,j]); Close(f); end; (*****************) Procedure Init; var i:bb; Begin FillChar(QH,sizeof(QH),0); Read_Data; For i:=1 to n Begin QH[0,i]:=QH[m,i]; QH[m+1,i]:=QH[1,i]; end; end; (*****************) Function Max(a,b,c:ll):ll; Var mm:ll; Begin mm:=a; if b>mm then mm:=b; if c>mm then mm:=c; Max:=mm; end; Procedure Processing; Var i,j:bb; Begin For j:=1 to m For i:=1 to n QH[i,j]:=QH[i,j] + Max(QH[i-1,j-1],QH[i,j-1],QH[i+1,j-1]); end; (*****************) Procedure Write_Data; Var f:Text; i,Top,k,Row,col:bb;maxr:ll; Vet:mmc; Begin Assign(f,fo); ReWrite(f); maxr:=0; Row:=0; For i:=1 to m if QH[i,n] > maxr then Begin maxr:=QH[i,n]; Row:=i; end; Writeln(f,maxr); FillChar(Vet,sizeof(Vet),0); Top:=1; Vet[Top]:=Row; Col := n; While Col > Begin k:=Row; For i:=k-1 to k+1 1]) then if QH[i,Col-1]=Max(QH[Row-1,Col-1],QH[Row,Col-1],QH[Row+1,Col- Begin Row:=i; if Row = then Row := m; if Row = m+1 then Row := 1; end; dec(Col); inc(Top); Vet[Top]:=Row; end; For i:=Top Downto Write(f,Vet[i],' '); Close(f); end; (*****************) Begin Init; Processing; Write_Data; end Hết ... 8 5 35 21544 Hết Hớng dẫn chấm thi chọn học sinh giỏi lớp 12 năm học 2007-2008 I/ Phơng pháp chung - Giám khảo tạo liệu vào, tính toán kết Thực chơng trình học sinh so sánh kết - Giám khảo sử... khảo sử dụng chơng trình mẫu để tính kết liệu vào: SAPXEP.PAS CHUOIHAT.PAS TSP.PAS - Chơng trình học sinh chạy test, giám khảo cho 0.5 điểm Nh vậy, câu hỏi có điểm giám khảo phải tạo đợc test - Nếu

Ngày đăng: 17/08/2017, 14:16

TỪ KHÓA LIÊN QUAN

w