namenum.pas

来自「Magio牛的usaco源代码」· PAS 代码 · 共 50 行

PAS
50
字号
{
ID:maigoak1
PROG:namenum
}

program namenum;
const
  dial:array['A'..'Y']of integer=(2,2,2,3,3,3,4,4,4,5,5,5,6,6,6,7,0,7,7,8,8,8,9,9,9);
var
  fin,fout,dict:text;
  name,num:string;
  i,len:integer;
  flag,exist:boolean;
begin
  assign(fin,'namenum.in');
  reset(fin);
  readln(fin,num);
  close(fin);
  len:=length(num);
  assign(fout,'namenum.out');
  rewrite(fout);
  assign(dict,'dict.txt');
  reset(dict);

  repeat
    readln(dict,name);
  until dial[name[1]]=ord(num[1])-48;

  exist:=false;
  repeat
    if length(name)=len then begin
      flag:=true;
      for i:=1 to len do
        if dial[name[i]]<>ord(num[i])-48 then begin
          flag:=false;
          break;
        end;
      if flag then begin
        exist:=true;
        writeln(fout,name);
      end;
    end;
    readln(dict,name);
  until dial[name[1]]>ord(num[1])-48;

  close(dict);
  if not exist then writeln(fout,'NONE');
  close(fout);
end.

⌨️ 快捷键说明

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