Đề thi lập đội tuyển dự thi quốc gia tỉnh đắc lắc năm học 2013 2014

13 224 0
Đề thi lập đội tuyển dự thi quốc gia tỉnh đắc lắc năm học 2013   2014

Đ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

SỞ GIÁO DỤC VÀ ĐÀO TẠO TỈNH ĐẮK LẮK ĐỀ CHÍNH THỨC (Đề thi gồm 02 trang) KỲ THI LẬP ĐỘI TUYỂN DỰ THI QUỐC GIA NĂM HỌC 2013 - 2014 MÔN: TIN HỌC (Thời gian làm 180 phút, không kể giao đề) Ngày thi: 24/10/2013 Đề thi gồm 02 trang (Thời gian làm 180 phút, không kể thời gian giao đề) Bài Bài - Từ đối xứng Bài - Biểu thức zero Bài - Tam giác số File làm BAI1.PAS BAI2.PAS BAI3.PAS Dữ liệu vào BAI1.INP BAI2.INP BAI3.INP Kết BAI1.OUT BAI2.OUT BAI3.OUT Bài 1(6 điểm) - Từ đối xứng Hai từ gọi đối xứng từ từ đảo ngược từ Cho file BAI1.INP dòng chứa xâu ký tự Hãy in số từ phân biệt có từ đối xứng dòng Kết in file BAI1.OUT, dòng ghi số từ phân biệt có từ đối xứng Nếu ghi kết số Ví dụ: BAI1.INP BAI1.OUT a ab ab cd ba cd ba dc dc tom la mot loai dong vat Bài 2(7 điểm) - Biểu thức zero Cho số tự nhiên N ≤ Dãy số tạo thành gồm chữ số từ đến N theo thứ tự Hãy điền vào dấu + , - , không điền dấu để tạo thành biểu thức có kết thu Hãy viết chương trình tìm tất khả Dữ liệu vào: Lấy từ file văn BAI2.INP với dòng ghi số N Dữ liệu ra: Ghi vào file văn có tên BAI2.OUT có cấu trúc sau: - Dòng đầu ghi số lượng kết tìm - Các dòng sau dòng ghi kết tìm Ví dụ BAI2.INP BAI2.OUT 1-2-3-4-5+6+7 = 1-2+3+4-5+6-7 = 1-23-45+67 = 1-23+4+5+6+7 = 1+2-3-4+5+6-7 = 1+2-3+4-5-6+7 = Trang Bài 3( điểm) - Tam giác số Hình sau mô tả tam giác số có số hàng N=5: 8 4 Đi từ đỉnh (số 7) đến đáy tam giác đường gấp khúc, bước từ số hàng xuống hai số đứng kề bên phải hay bên trái hàng dưới, cộng số đường lại ta tổng Ví dụ: đường có tổng S=26, đường 7 có tổng S=23 Trong hình trên, tổng Smax=30 theo đường tổng lớn tất tổng Nhiệm vụ bạn viết chương trình nhận liệu vào tam giác số chứa text file BAI3.INP đưa kết giá trị tổng Smax Dữ liệu: cho file văn BAI3.INP: - Dòng thứ 1: có số N số hàng tam giác số (00 delete(st,pos(tu,st),length(tu)-1); tu1:=tudao(tu); If (pos(tu1,st)>0) and (st[pos(tu1,st)+length(tu1)-1]=' ') then inc(dem); demtudx:=dem; End; end; procedure xuly; Var st:string; Begin Assign(f,'bai1.inp'); Reset(f); Assign(g,'bai1.out'); Rewrite(g); While not eof(f) Begin Readln(f,st); Writeln(g,demtudx(st)); End; Trang Close(f); Close(g); End; Begin xuly; End BÀI – Biểu thức zero Program Zero_sum; Type MangStr = array[1 15] of string; Const Fi ='BAI2.INP'; Fo ='BAI2.OUT'; Dau : array[1 3] of string[1] = ('-','+',''); S : array[1 9] of char =('1','2','3','4','5','6','7','8','9'); ChuSo = ['1' '9']; Var N,k,dem: byte; D : array[2 9] of string[1]; F : Text; St : String; M : MangStr; Procedure Write_out; Var i : byte; Begin Assign(F,Fo); Rewrite(F); Writeln(F,dem); For i:= to dem writeln(F,M[i],' = 0'); Close(F); Halt; End; Procedure Read_inp; Begin Assign(F,Fi); Reset(F); Read(F,N); Close(F); If N < then write_out; End; Function DocSo(S : String): longint; Var M : longint; t : byte; Begin M:= 0; t:= 0; If S[k] in ['+','-'] then begin t:= k; Inc(k); end; While (km then Max:=n else Max:=m; end; { } Procedure MakeArrayOfQHD; Begin b[1,2]:=a[1,2]; for j:=1 to n b[j,1]:=-maxint; for i:=3 to n b[1,i]:=-maxint; for j:=2 to n begin for i:=2 to j+1 b[j,i]:=a[j,i]+max(b[j-1,i],b[j-1,i-1]); end; end; { -} Procedure FindMax; var max:integer; Begin max:=b[n,1]; for i:=2 to n if b[n,i]>max then max:=b[n,i]; assign(f,'bai3.out');rewrite(f); write(f,max); close(f); end; { } BEGIN Input; makearrayofQHD; FindMax; END II Hướng dẫn chấm Bài 1: Test, test cho điểm Bài 2: Test, test cho điểm + điểm test mẫu ví dụ Bài 3: Test, test cho điểm + điểm test mẫu ví dụ Chú ý: Kết có nhiều phương án khác yêu cầu giám khảo xem xét kỹ chấm Hết SỞ GIÁO DỤC VÀ ĐÀO TẠO TỈNH ĐẮK LẮK ĐỀ CHÍNH THỨC (Đề thi gồm 02 trang) KỲ THI LẬP ĐỘI TUYỂN DỰ THI QUỐC GIA NĂM HỌC 2013 - 2014 MÔN: TIN HỌC (Thời gian làm 180 phút, không kể giao đề) Ngày thi: 25/10/2013 Đề thi gồm 02 trang (Thời gian làm 180 phút, không kể thời gian giao đề) Bài Bài 1: - Biến đổi xâu Bài 2: - Đội cờ File làm BAI1.PAS BAI2.PAS Dữ liệu vào BAI1.INP BAI2.INP Kết BAI1.OUT BAI2.OUT Bài 1(10 điểm) - Biến đổi xâu Cho xâu kí tự U = u1u2…un , ui  {a,b,c} = X (i=1,2,…,n) Các phép biến đổi sau (đánh số thứ tự từ đến 9) cho phép thay hai kí tự liên tiếp xâu cho kí tự: 1) aa  x1 2) ab  x2 3) ac  x3 4) ba  x4 5) bb  x5 6) bc  x6 7) ca  x7 8) cb  x8 9) cc  x9 Trong xi  X, i=1,2, ,9 Cần tìm cách áp dụng phép toán biến đổi có để chuyển xâu U kí tự định trước w  X Dữ liệu vào: cho file văn BAI1.INP: - Dòng đầu ghi số n - N dòng dòng chứa kí tự xâu U theo thứ tự từ u1 đến un - Dòng thứ i số dòng chứa chữ xi , i=1,2, ,9 - Dòng cuối chứa chữ w Kết tìm ghi file văn BAI1.OUT theo quy cách sau: - Dòng ghi số lượng phép biến đổi M cần áp dụng để chuyển xâu U thành chữ w, dòng ghi số không tìm phép biến đổi - Nếu biến đổi xâu cho kí tự dòng thứ i số M dòng ghi số thứ tự phép biến đổi cần sử dụng số hai kí tự liên tiếp xâu biến đổi cần thay kí tự Ví dụ: BAI1.INP b b b b a b b a c BAI1.OUT 4 5 Trang b a a c c a Dãy biến đổi mô tả sơ đồ sau: (w = a) bbbba (4)  bbbc (5)  bbc (5)  bc (6)  a Bài 2(10 điểm) - Đội cờ Có hai đội cờ vua A B thi đấu với Mỗi đội cờ cử n kỳ thủ, kỳ thủ đội B đấu trận đấu với kỳ thủ đội A ngược lại Vậy có tất n trận đấu Đội thắng điểm, hoà điểm thua điểm Cho đội B quyền chọn cặp thi đấu Yêu cầu: Lập trình để đội B chọn cặp thi đấu cho tổng số điểm đội B cao nhất, cho biết trình độ cầu thủ thứ i đội A B a[i] b[i] (i=1,2,…,n) giả sử thi đấu, hai kỳ thủ có trình độ ngang hoà kỳ thủ có trình độ cao thắng Dữ liệu: Ghi file văn BAI2.INP gồm n+1 dòng:  Dòng ghi số nguyên dương n, 1≤n≤1000  Dòng thứ i+1 ghi số nguyên a[i], b[i] (1≤a[i], b[i]≤100) cách khoảng trắng Kết quả: Ghi file văn BAI2.OUT gồm n+1 dòng  Dòng đầu ghi số nguyên T tổng số điểm cao mà đội B đạt  Dòng thứ i+1 (1≤i≤n) ghi số nguyên dương x[i] (1≤x[i]≤n) với x[i] số thứ tự kỳ thủ đội B phải thi đấu với kỳ thủ thứ i đội A để tổng số điểm đội B đạt T Ví dụ: BAI2.INP BAI2.OUT - Hết  Thí sinh không sử dụng tài liệu  Giám thị không giải thích thêm Họ tên thí sinh…………………… ……………… Số báo danh……… Trang Trang SỞ GIÁO DỤC VÀ ĐÀO TẠO TỈNH ĐẮK LẮK KỲ THI LẬP ĐỘI TUYỂN DỰ THI QUỐC GIA NĂM HỌC 2013 - 2014 HƯỚNG DẪN CHẤM (Hướng dẫn chấm gồm có trang) I Phần chương trình nguồn Bài 1: program biendoixau; {$B-,Q+,R+} {$M 65500,0,655360} const maxN = 20; fi = 'BAI1.INP' ; fo = 'BAI1.OUT'; bd: array[1 9] of string[2]= ('aa','ab','ac','ba','bb', 'bc','ca','cb','cc'); type sN= string[maxN]; s9= string[9]; mang= array[1 maxN] of byte; var a, vt: mang; m,n: byte; u: sN; x: s9; w: char; f: text; procedure khoitao; var i:byte; begin assign(f,fi); reset(f); readln(f,n); u:= ''; x:= ''; m:= n-1; for i:=1 to n begin readln(f,w); u:=u+w; end; for i:=1 to begin readln(f,w); x:=x+w; end; read(f,w); close(f); end; procedure check; var t,i,kt: byte; s:sN; begin s:= u; for i:=1 to m begin t:= pos(bd[a[i]],s); if t = then exit; vt[i]:= t; delete(s,t,2); insert(x[a[i]],s,t); end; if pos(w,s) > then begin writeln(f,m); MÔN: TIN HỌC Ngày thi: 25/10/2013 Trang for i:= to m writeln(f,a[i],' ',vt[i], ' ',vt[i]+1); close(f);halt; end; end; procedure tim(i:byte); var j:byte; begin if i>m then check else for j:=1 to begin a[i]:= j; tim(i+1); end; end; procedure xuly; begin assign(f,fo); rewrite(f); tim(1); write(f,0); close(f); end; BEGIN khoitao; xuly; END BÀI 2: program doico; const tfi = 'BAI2.INP'; tfo = 'BAI2.OUT'; maxN = 1000; var fi, fo : text; N : integer; dd,x,a,b,csA,csB : array[1 maxN] of integer; DiemMax : integer; procedure Docdl; var i: integer; begin assign(fi,tfi); reset(fi); readln(fi,N); for i:=1 to N read(fi,a[i],b[i]); close(fi); end; procedure Doi(var u,v: integer); var w: integer; begin w:=u; u:=v; v:=w; end; procedure SortA(k,l: integer); Trang var i,j,mid: integer; begin mid:=a[(k+l) div 2]; i:=k; j:=l; repeat while a[i]mid dec(j); if ij; if j>k then SortA(k,j); if imid inc(i); while b[j]k then SortB(k,j); if ia[k] then inc(DiemMax,2) else inc(DiemMax,1); limit:=k-1; inc(i); end; until k=0; for j:=i to N begin repeat inc(k) until dd[k]=0; x[k]:=csB[j]; end; end; procedure inkq; var i: integer; begin assign(fo,tfo); rewrite(fo); writeln(fo,diemMax); for i:=1 to N writeln(fo,x[i]); close(fo); end; BEGIN Trang Docdl; SapXepA; SapXepB; Ghep; Inkq; END II Hướng dẫn chấm Bài 1: Test, test cho điểm Bài 2: Test, test cho điểm Chú ý: Kết có nhiều phương án khác yêu cầu giám khảo xem xét kỹ chấm Hết

Ngày đăng: 10/10/2016, 10:19

Từ khóa liên quan

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

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

Tài liệu liên quan