讨论 / 搞笑
tzh 2010-08-25 07:18:00
点我顶贴 收藏 删除
本来是超时一个点,错一个点的,结果将一些integer 改成byte就都过了。。。。。

有同错的来看看;;

改好的AC程序:

program t291;

var

k:boolean;

s,t:string;

n,f,b:longint;

c,c1,d,q1,e:byte;

a,q:array[1..26]of byte;

begin

fillchar(a,sizeof(a),0);

readln(n); readln(s);

q1:=ord('a')-1;

c1:=length(s);

for d:=1 to c1 do

begin

e:=ord(s[d])-q1;

a[e]:=a[e]+1;

end;

f:=0;

for b:=1 to n do

begin

readln(t);

c:=length(t);

if c=c1 then

begin

k:=true;

fillchar(q,sizeof(q),0);

for d:=1 to c do

begin

e:=ord(t[d])-q1;

q[e]:=q[e]+1;

end;

for d:=1 to 26 do

if a[d]<>q[d] then begin k:=false;break; end;

if k then inc(f);

end;

end;

write(f);

end.

查看更多回复
提交回复