p1315.pas

来自「高手写的所有acm例程 在acm.zju.edu.cn 上的题目的例程」· PAS 代码 · 共 72 行

PAS
72
字号
PROGRAM p1315;

VAR
        step                            :Integer;
        numdic,numdata                  :Integer;
        i                               :Integer;
        data,dic,copy                   :array[1..20]of String;

PROCEDURE Main;
var
        i,j,p                           :Integer;
        max                             :Integer;
        match                           :array[1..20]of Integer;
        s                               :String;
        flag                            :Boolean;

begin
max:=0;
for i:=1 to numdata do
        begin
        match[i]:=0;
        for j:=1 to numdic do
                begin
                s:=data[i];
                while pos(dic[j],s)>0 do
                        begin
                        p:=pos(dic[j],s);
                        if (p=1)or(p+length(dic[j])-1=length(s)) then
                                flag:=true else
                                begin
                                flag:=true;
                                if (((s[p-1]>='a')and(s[p-1]<='z')) or
                                        ((s[p-1]>='A')and(s[p-1]<='Z'))) then flag:=false;
                                if (((s[p+length(dic[j])]>='a')and(s[p+length(dic[j])]<='z')) or
                                        ((s[p+length(dic[j])]>='A')and(s[p+length(dic[j])]<='Z'))) then flag:=false;
                                end;
                        if flag then inc(match[i]);
                        s[p]:='/';
                        end;
                end;
        if match[i]>max then max:=match[i];
        end;
writeln('Excuse Set #',step);
for i:=1 to numdata do
        if match[i]=max then writeln(copy[i]);
writeln;
end;


BEGIN
//assign(input,'p.in');
//reset(input);
step:=0;
while not eof do
        begin
        inc(step);
        readln(numdic,numdata);
        for i:=1 to numdic do
                begin
                readln(dic[i]);
                dic[i]:=upcase(dic[i]);
                end;
        for I:=1 to numdata do
                begin
                readln(data[i]);
                copy[i]:=data[i];
                data[i]:=upcase(data[i]);
                end;
        Main;
        end;
END.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?