首页 > 其他 > 详细

hdu oj 4300 Clairewd’s message AC code

时间:2015-06-17 21:35:06      阅读:230      评论:0      收藏:0      [点我收藏+]
#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<string>
#include<vector>
#include<cassert>

using namespace std;

int main(void)
{
	int T;
	cin >> T;
	while (T--) {
		string S, msg;
		while (cin >> S >> msg) {
			//assume division point.
			int div = (msg.length())/ 2;
		
			//cout << div << endl;

			//partial decryption.
			string pmsg(msg.begin(), msg.begin()+div);
			for (int i = 0; i < pmsg.length(); ++i) {
				pmsg[i] = 'a'+S.find(pmsg[i]);
			}

			//cout << pmsg << endl;

			//pinpoint the division point.
			int pos;
			for (pos = div; pos < msg.length(); ++pos) {
				if (msg.compare(pos, msg.length() - pos, pmsg.c_str(),msg.length() - pos) == 0)
					break;
			}
			

			cout << msg.substr(0, pos);
			for (int i = 0; i < pos; ++i) {
				cout << (char)('a' + S.find(msg[i]));
			}
			cout << endl;
		}
	}
	//system("pause");
	return 0;
}

hdu oj 4300 Clairewd’s message AC code

原文:http://blog.csdn.net/qq_21555605/article/details/46537547

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!