记录编号 434493 评测结果 AAAAAAAAAA
题目名称 [NOIP 2012]Vigenère密码 最终得分 100
用户昵称 Gravatar+1s 是否通过 通过
代码语言 C++ 运行时间 0.007 s
提交时间 2017-08-07 23:15:18 内存使用 0.31 MiB
显示代码纯文本
#include<fstream>
using namespace std;
ifstream fin("vigenere.in");
ofstream fout("vigenere.out");
char key[110],wrd[1010];
char py(char ke,char wr)
{
	bool isl=('A'<=wr&&wr<='Z');
	if(isl)
	wr+=('a'-'A');
	if('A'<=ke&&ke<='Z')
	ke+=('a'-'A'); 
	int t=wr-ke;
	char re;
	if(t>=0)
	{
		re='a'+t;
	}
	else
	{
		re='z'+1+t;
	}
	if(isl)
	re-=('a'-'A');
	return re;
}
int main()
{
	fin>>key>>wrd;
	int pk=0,pw=0;
	while(wrd[pw]!='\0')
	{
		fout<<py(key[pk],wrd[pw]);
		pk++;
		if(key[pk]=='\0')
		pk=0;
		pw++;
	}
	return 0;
}