【 OJ 】 HDOJ1048 18年12月15日22:48 [ 42 ]

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/QingCoffe/article/details/85019493

Presentation Error

是在看不出哪里格式错了,提交了几十次了,懒得搞了,弄了半天,我的思路就是26取模,

也可以弄另外一个数组保存暗文 str[i]=s[ch[i]-'A'] 

结果:

START
NS BFW, JAJSYX TK NRUTWYFSHJ FWJ YMJ WJXZQY TK YWNANFQ HFZXJX
END
START
N BTZQI WFYMJW GJ KNWXY NS F QNYYQJ NGJWNFS ANQQFLJ YMFS XJHTSI NS WTRJ
END
START
IFSLJW PSTBX KZQQ BJQQ YMFY HFJXFW NX RTWJ IFSLJWTZX YMFS MJ
END
ENDOFINPUT
IN WAR, EVENTS OF IMPORTANCE ARE THE RESULT OF TRIVIAL CAUSES
I WOULD RATHER BE FIRST IN A LITTLE IBERIAN VILLAGE THAN SECOND IN ROME
DANGER KNOWS FULL WELL THAT CAESAR IS MORE DANGEROUS THAN HE
请按任意键继续. . .
# include<iostream>
# include<string>
using namespace std;
int main(void) {
	string s,result;
	bool f;
	cin >> s;
	while (!strcmp(s.c_str(), "START")) {
		f = false;
		cin >> s;
		int slen,num;
		while (strcmp(s.c_str(), "END")) {
			slen = s.length();
			for (int i = 0; i < slen; i++) {
				if (s[i] >= 'A'&&s[i] <= 'Z') {
					num = s[i] - 'A';
					num += 26;
					s[i] = (num - 5) % 26+'A';//26取余为0
				}
			}
			if (f)
				result += " ";
			result += s;
			f = true;
			cin >> s;//录入下一个单词
		}
		result += "\n";
	//	cout << result << endl;
	//	result.clear();
		cin >> s;//录入下一个START
	}
	cout << result;
	system("pause");
	return 0;
}

猜你喜欢

转载自blog.csdn.net/QingCoffe/article/details/85019493