Bài giải HSG 9 tin học 2010-2011 tinh Vĩnh Phúc
Chia sẻ bởi Nguyễn Tiến Mạnh |
Ngày 16/10/2018 |
41
Chia sẻ tài liệu: Bài giải HSG 9 tin học 2010-2011 tinh Vĩnh Phúc thuộc Tin học 9
Nội dung tài liệu:
Bài 1
Uses Crt;
Const Fi=`Blimp.INP`;
Fo=`Blimp.OUT`;
Type MA=Array[1..10] Of String[15];
Var s:MA;
F,G:Text;
i,n,d,k,j:Integer;
Procedure Nhap;
Begin
Assign(F,Fi);Reset(F);
ReadLn(F,n);
For i:=1 To n Do
ReadLn(F,S[i]);
Close(F);
End;
Procedure Xu_ly;
Begin
Assign(G,Fo);ReWrite(G);
d:=0;
For i:=1 To n Do
Begin
k:=0;
For j:=1 To LengTh(S[i]) Do
If (S[i][j] in [`A`..`Z`]) Or (S[i][j] in [`0`..`9`]) Or (S[i][j] in [`-`]) Then k:=k+1;
If (k=LengTh(S[i])) And (Pos(`FBI`,S[i])<>0) Then
Begin
Write(G,i:3);
d:=d+1;
End;
End;
If d=0 Then Write(G,`GO`);
Close(G);
End;
BEGIN
Nhap;
Xu_ly;
END.
Bài 2:
Uses Crt;
Const Fi=`lexdiv.inp`;
Fo=`lexdiv.out`;
Type MA=Array[1..100] Of String;
Var i,i1,j1,j2,a,b,k,m:Integer;
s,tg:String;
F,G:Text;
c:MA;
Procedure Nhap;
Begin
Assign(F,Fi);Reset(F);
ReadLn(F,A,B,K);
Close(F);
End;
Procedure Xu_ly;
Begin
Assign(G,Fo);ReWrite(G);
m:=0;
For i:=A To B Do
If i Mod k = 0 Then
Begin
m:=m+1;
Str(i,s);
c[m]:=s;
End;
For j1:=1 To m Do
For j2:=j1+1 To m Do
Begin
i1:=1;
While c[j1][i1]=c[j2][i1] Do i1:=i1+1;
If c[j1][i1]>c[j2][i1] Then
Begin
tg:=c[j1];
c[j1]:=c[j2];
c[j2]:=tg;
End;
End;
Write(G,c[1]:5);
Close(G);
End;
BEGIN
Nhap;
Xu_ly;
END.
Bài 3:
Uses Crt;
Const Fi=`prison.INP`;
Fo=`prison.OUT`;
Type MA=Array[1..100] Of Integer;
Var A:MA;
F,G:Text;
s,n,i,j1,j,kt,d,m,k:Integer;
Procedure Nhap;
Begin
Assign(F,Fi);Reset(F);
ReadLn(F,S,N);
Close(F);
End;
Procedure Xu_ly;
Begin
If S Mod 2 =0 Then m:=s*(s*2-1)-1
Else m:=s*(s*2-1);
A[1]:=0;
A[2]:=2*s-1;
For j:=3 To s Do
A[j]:=A[j-1]*2-A[j-2];
A[s+1]:=s-1;
A[s+2]:=2*A[s+1]+s;
For j1:=s+3 To 2*s Do
A[j1]:=A[j1-1]*2-A[j1-2];
kt:=0;
For i:=1 To 2*s Do
If n=A[i] Then kt:=kt+1;
If (kt=0) Then
Begin
If ((n-2*s+1)>=0)And(n-2*s+1<=m
Uses Crt;
Const Fi=`Blimp.INP`;
Fo=`Blimp.OUT`;
Type MA=Array[1..10] Of String[15];
Var s:MA;
F,G:Text;
i,n,d,k,j:Integer;
Procedure Nhap;
Begin
Assign(F,Fi);Reset(F);
ReadLn(F,n);
For i:=1 To n Do
ReadLn(F,S[i]);
Close(F);
End;
Procedure Xu_ly;
Begin
Assign(G,Fo);ReWrite(G);
d:=0;
For i:=1 To n Do
Begin
k:=0;
For j:=1 To LengTh(S[i]) Do
If (S[i][j] in [`A`..`Z`]) Or (S[i][j] in [`0`..`9`]) Or (S[i][j] in [`-`]) Then k:=k+1;
If (k=LengTh(S[i])) And (Pos(`FBI`,S[i])<>0) Then
Begin
Write(G,i:3);
d:=d+1;
End;
End;
If d=0 Then Write(G,`GO`);
Close(G);
End;
BEGIN
Nhap;
Xu_ly;
END.
Bài 2:
Uses Crt;
Const Fi=`lexdiv.inp`;
Fo=`lexdiv.out`;
Type MA=Array[1..100] Of String;
Var i,i1,j1,j2,a,b,k,m:Integer;
s,tg:String;
F,G:Text;
c:MA;
Procedure Nhap;
Begin
Assign(F,Fi);Reset(F);
ReadLn(F,A,B,K);
Close(F);
End;
Procedure Xu_ly;
Begin
Assign(G,Fo);ReWrite(G);
m:=0;
For i:=A To B Do
If i Mod k = 0 Then
Begin
m:=m+1;
Str(i,s);
c[m]:=s;
End;
For j1:=1 To m Do
For j2:=j1+1 To m Do
Begin
i1:=1;
While c[j1][i1]=c[j2][i1] Do i1:=i1+1;
If c[j1][i1]>c[j2][i1] Then
Begin
tg:=c[j1];
c[j1]:=c[j2];
c[j2]:=tg;
End;
End;
Write(G,c[1]:5);
Close(G);
End;
BEGIN
Nhap;
Xu_ly;
END.
Bài 3:
Uses Crt;
Const Fi=`prison.INP`;
Fo=`prison.OUT`;
Type MA=Array[1..100] Of Integer;
Var A:MA;
F,G:Text;
s,n,i,j1,j,kt,d,m,k:Integer;
Procedure Nhap;
Begin
Assign(F,Fi);Reset(F);
ReadLn(F,S,N);
Close(F);
End;
Procedure Xu_ly;
Begin
If S Mod 2 =0 Then m:=s*(s*2-1)-1
Else m:=s*(s*2-1);
A[1]:=0;
A[2]:=2*s-1;
For j:=3 To s Do
A[j]:=A[j-1]*2-A[j-2];
A[s+1]:=s-1;
A[s+2]:=2*A[s+1]+s;
For j1:=s+3 To 2*s Do
A[j1]:=A[j1-1]*2-A[j1-2];
kt:=0;
For i:=1 To 2*s Do
If n=A[i] Then kt:=kt+1;
If (kt=0) Then
Begin
If ((n-2*s+1)>=0)And(n-2*s+1<=m
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...
Người chia sẻ: Nguyễn Tiến Mạnh
Dung lượng: 27,00KB|
Lượt tài: 0
Loại file: doc
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)