比赛 2012Day1 评测结果 AAAAAAAAAA
题目名称 Vigenère密码 最终得分 100
用户昵称 グッド大きな萌菌 运行时间 0.005 s
代码语言 Pascal 内存使用 0.17 MiB
提交时间 2015-10-22 20:13:44
显示代码纯文本
var
        a,b:string[1];
        n,m,i:integer;
        k:string[100];
Begin
	assign(input,'vigenere.in');reset(input);
	assign(output,'vigenere.out');rewrite(output);
        readln(k);i:=0;
        repeat
                inc(i);
                if i>length(k) then i:=1;
                read(a);b:=k[i];
                if (ord(a[1])>=65)and(ord(a[1])<=90) then
                begin
                        if (ord(b[1])>=97)and(ord(b[1])<=122) then b:=chr(ord(b[1])-32);
                        n:=65;m:=90;
                end
                else
                begin
                        if (ord(b[1])>=65)and(ord(b[1])<=90) then b[1]:=chr(ord(b[1])+32);
                        n:=97;m:=122;
                end;
                if (ord(a[1])>=ord(b[1]))and(a<>'') then write(chr(n+ord(a[1])-ord(b[1])))
                else if (ord(a[1])<ord(b[1]))and(a<>'') then write(chr(m-ord(b[1])+ord(a[1])+1));
        until a='';
	close(input);close(output);
End.