比赛 2012Day1 评测结果 AAAAAAAAAA
题目名称 Vigenère密码 最终得分 100
用户昵称 mikumikumi 运行时间 0.003 s
代码语言 C++ 内存使用 0.32 MiB
提交时间 2015-10-22 19:45:41
显示代码纯文本
#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
char k[110],s[1100],ans[1100];
int get(char a)
{
	if('A'<=a&&a<='Z') return a-'A';
	else return a-'a';
}
int main()
{
	freopen("vigenere.in","r",stdin);
	freopen("vigenere.out","w",stdout);
	scanf("%s",k);
	scanf("%s",s);
	int mod=strlen(k);
	char tem;
	for(int i=0;i<strlen(s);i++)
	{
		int now=(get(s[i])-get(k[i%mod])+26)%26;
		if(s[i]-'A'>25) tem='a';
		else tem='A';
		ans[i]=tem+now;
	}
	printf("%s",ans);
	return 0;
}