2012年分区联赛提高组第一天第一题…

时间:2022-05-03 08:55:06
2012年分区联赛提高组第一天第一题… 
2012年分区联赛提高组第一天第一题…  
2012年分区联赛提高组第一天第一题…  
2012年分区联赛提高组第一天第一题…


解题思路: 先用字符串读入,然后用两个字符数组处理,从 1n循环,根据题目中给出的规律处理,每处理完一个字母就输出一个字母。


程序:
const
  maxn=1000;
var
  st:ansistring;
  a,b:array[1..maxn]of char;
  n,m,x,i,w,s:longint;
begin
  readln(st);
  m:=length(st);
  for i:=1 to m do
    b[i]:=st[i];
  st:='';
  readln(st);
  n:=length(st);
  for i:=1 to n do
    a[i]:=st[i];
  for i:=1 to n do
    begin
      x:=(i-1) mod m+1;
      if (ord(a[i])<97)and(ord(b[x])>96) then b[x]:=chr(ord(b[x])-32);
      if (ord(a[i])>96)and(ord(b[x])<97) then b[x]:=chr(ord(b[x])+32);
      if ord(a[i])<97 then s:=65 else s:=97;
      w:=ord(a[i])-ord(b[x])+s;
      if w>s+25 then w:=w-25;
      if w
      write(chr(w));
    end;
end.


版权属于: Chris
转载时必须以链接形式注明原始出处及本声明。