Đề thi học sinh giỏi tỉnh Long An môn Tin học năm 2013 có đáp án
Đề thi học sinh giỏi tỉnh Long An môn Tin học năm 2013 có đáp án
Bài 1: SNT rút gọn của 1 số tự nhiên n là tổng các ước
nguyên tố của n.
VD: n=252=2.2.3.3.7 thì SNT rút gọn
của n là 2+3+7=12.
a)
Nhập số nguyên n
từ bàn phím. Tìm SNT rút gọn của n (1<n<10^6)
b)
Nhập 2 số nguyên
a, b không quá 10000 (a<b). In ra trong đoạn từ a->b các số có cùng SNT
rút gọn với n và số lượng các số tìm được.
Ví dụ:
Nhap n: 252
Ví dụ:
Nhap n: 252
So nguyen to rut gon
cua n: 12
Nhap a, b: 1 200
Cac so co cung so nguyen to rut gon voi n:
35 42 84
126 168 175
Co 6 so
Bài 2: Cho xâu kí tự S bao gồm toàn kí tự a và b, không quá
255 kí tự. Dãy con đúng của xâu S là 1 dãy con liên tục bất kì của S bao gồm
các kí tự giống nhau. Dãy con đúng bậc 1 của xâu S là 1 dãy con liên tục bất kì
của S bao gồm các kí tự giống nhau nhưng được thêm 1 kí tự khác. TH đặc biệt: S
chỉ có 1 loại kí tự thì dãy con đúng cũng chính là dãy con đúng bậc 1.
a)
Tính độ dài lớn
nhất của dãy con đúng của S.
b)
Tính độ dài lớn
nhất của dãy con đúng bậc 1 của S.
Ví dụ:
Ví dụ:
‘aaabaaabbaaaaa’
Độ dài lớn nhất của dãy con đúng: 5 (‘aaabaaabbaaaaa’)
Độ
dài lớn nhất của dãy con đúng bậc 1: 7 (‘aaabaaabbaaaaa’)
Bài 3: Cho trước tập tin văn bản
INPUT.INP gồm nhiều dòng (không quá 1000 dòng), mỗi dòng chứa một chuỗi ký tự
(gồm các chữ cái từ ‘A’ đến ‘Z’ viết dính liền với nhau), mỗi chuỗi dài không
quá 255 ký tự. Trong tập tin này có duy nhất một chuỗi xuất hiện đúng một lần,
các chuỗi còn lại đều xuất hiện đúng k lần. (Số k không cho trước, nhưng biết
rằng k là một số chẵn và k≠0).
Ví dụ:
Ví dụ:
INPUT.INP
|
OUTPUT.OUT
|
ABCD
EFGHIJK
TINHOCTRE
ABCD
EFGHIJK
|
TINHOCTRE
|

Lời Giải
(Tự biên soạn)
Bài 1: SNT rút gọn của 1 số tự nhiên n là tổng
các ước nguyên tố của n.
VD:
n=252=2.2.3.3.7 thì SNT rút gọn của n là 2+3+7=12.
a) Nhập
số nguyên n từ bàn phím. Tìm SNT rút gọn của n (1<n<10^6)
b) Nhập
2 số nguyên a, b không quá 10000 (a<b). In ra trong đoạn từ a->b các số
có cùng SNT rút gọn với n và số lượng các số tìm được.
program SNTrutgon;
uses crt;
var a,b,d,m,n:longint;
c:array[1..10000]of longint;
function ktnt(x:longint):boolean;
var i,j:longint;
begin
ktnt:=false;
j:=0;
for i:=2 to x div
2 do
if (x mod i=0)
then j:=j+1;
if (j=0) then
ktnt:=true;
end;
function sntrg(y:longint):longint;
var z:longint;
begin
sntrg:=0;
if (ktnt(y)) then
sntrg:=y
else
for z:=2 to y
div 2 do
if ((y mod z=0)and(ktnt(z)))
then sntrg:=sntrg+z;
end;
begin
clrscr;
writeln('a)');
write(' Nhap n= ');
readln(n);
writeln(' So nguyen to rut gon cua ',n,' la
',sntrg(n));
writeln('b)');
write(' Nhap a= ');
readln(a);
write('
Nhap b (b>a): ');
readln(b);
d:=0;
for m:=a to b do
if
((m<>n)or(m=n)) then
if
(sntrg(m)=sntrg(n)) then
begin
d:=d+1;
c[d]:=m;
end;
if (d=0) then
write(' Trong doan tu ',a,' den ',b,'
khong co so nguyen nao co cung so nguyen to rut gon voi ',n)
else
begin
writeln(' Co tat ca ',d,' so co
cung so nguyen to rut gon voi ',n,' la');
write(' ');
for m:=1 to d
do write(c[m],' ');
end;
readln;
end.
Bài 2: Cho xâu kí tự S bao gồm toàn kí tự a và
b, không quá 255 kí tự. Dãy con đúng của xâu S là 1 dãy con liên tục bất kì của
S bao gồm các kí tự giống nhau. Dãy con đúng bậc 1 của xâu S là 1 dãy con liên
tục bất kì của S bao gồm các kí tự giống nhau nhưng được thêm 1 kí tự khác. TH
đặc biệt: S chỉ có 1 loại kí tự thì dãy con đúng cũng chính là dãy con đúng bậc
1.
a) Tính
độ dài lớn nhất của dãy con đúng của S.
b) Tính
độ dài lớn nhất của dãy con đúng bậc 1 của S.
program daycon;
uses crt;
var i,j,k,d1,d2,max1,max2:byte;
s:string;
begin
clrscr;
write('Nhap xau:
');
readln(s);
max1:=1;
for i:=1 to
length(s)-1 do
begin
if
(s[i]=s[i+1]) then
begin
j:=i-1;
repeat
j:=j+1;
until
((s[i]<>s[j])or(j>length(s)));
end;
if
(j-i>max1) then max1:=j-i;
end;
writeln('Do dai
lon nhat cua day con dung cua S la ',max1);
max2:=2;
for i:=1 to length(s)-1
do
begin
j:=i;
repeat
j:=j+1;
d1:=0;
d2:=0;
for
k:=i to j do
if
(s[k]='a') then d1:=d1+1
else
d2:=d2+1;
until
(((d1>1)and(d2>1))or(j>length(s)));
if(j-i>max2) then max2:=j-i;
end;
writeln('Do dai
lon nhat cua day con dung bac 1 cua S la ',max2);
readln;
end.
Bài 3: Cho trước
tập tin văn bản INPUT.INP gồm nhiều dòng (không quá 1000 dòng), mỗi dòng chứa
một chuỗi ký tự (gồm các chữ cái từ ‘A’ đến ‘Z’ viết dính liền với nhau), mỗi
chuỗi dài không quá 255 ký tự. Trong tập tin này có duy nhất một chuỗi xuất
hiện đúng một lần, các chuỗi còn lại đều xuất hiện đúng k lần. (Số k không cho
trước, nhưng biết rằng k là một số chẵn và k≠0).
Yêu cầu:
Viết chương trình đọc tập tin
INPUT.INP xử lý và tìm chuỗi duy nhất đó, ghi kết quả tìm được vào tập tin văn
bản OUTPUT.OUT.
Kết quả: Tập tin OUTPUT.OUT có
một dòng là chuỗi ký tự tìm được theo yêu cầu.
program chuoi;
uses crt;
var f,g:text;
i,j,n:integer;
a:array[1..1000] of string;
d:array[1..1000] of integer;
kt:array[1..1000]of boolean;
begin
assign(f,'INPUT.INP');
reset(f);
assign(g,'OUTPUT.OUT');
rewrite(g);
n:=0;
repeat
n:=n+1;
readln(f,a[n]);
kt[n]:=true;
d[n]:=1;
until (a[n]='');
for i:=1 to n-1 do
if (kt[i]) then
begin
for j:=i+1 to n do
if (a[j]=a[i]) then
begin
kt[i]:=false;
kt[j]:=false;
d[i]:=d[i]+1;
d[j]:=d[j]+1;
end;
if(d[i]=1) then write(g,a[i]);
end;
close(f);
close(g);
end.
#bloglaptrinhcoban.blogsot.com
templisPambu Brody Fokused https://wakelet.com/wake/TLLZ6vXwOk8VZed3Ge6m1
ReplyDeletegritapbrownez
deneumi_wa Kate Pulley Here
ReplyDeletemaljaliti
smarinZat_go Karen Carter ReiBoot Pro
ReplyDeleteAvast Internet Security
Autodesk AutoCAD
dinoverwa
0esscenVache Tyler Gushaa https://wincracks.net/
ReplyDeletehttps://wincollection.net/
https://newcracks.org/
https://winprograms.org/
undaotico