programming-challenges ShellSort (110407) 题解

原创 2015年07月08日 18:20:53

在programming challenges上没有ac,只在UVA上ac了。不过看了看别人的思路,至少思路上是没问题的。

#include <iostream>
#include <sstream>
#include <fstream>
#include <string>
#include <vector>
#include <queue>
#include <map>
#include <set>
#include <stack>
#include <assert.h>
#include <algorithm>
#include <math.h>
#include <ctime>
#include <functional>
#include <string.h>
#include <stdio.h>
#include <numeric>
#include <float.h>

using namespace std;

/*
4.6.7
*/

int main() {
	int TC = 0; cin >> TC;

	for (int tc = 1; tc <= TC; tc++) {
		int num = 0; cin >> num; cin.get();
		vector<string> source, objective;
		for (int i = 0; i < num; i++) {
			string s; getline(cin, s);
			source.push_back(s);
		}
		for (int i = 0; i < num; i++) {
			string s; getline(cin, s);
			objective.push_back(s);
		}

		vector<string> removed; 
		int sourceIndex = num - 1;
		for (int i = num-1; i >= 0; i--) {
			while (sourceIndex >= 0) {
				if (source[sourceIndex] == objective[i]) {
					sourceIndex--;
					break;
				}
				else {
					removed.push_back(source[sourceIndex]);
				}
				sourceIndex--;
			}
			if (sourceIndex < 0) break;
		}

		for (int i = num - 1; i >= 0; i--) {
			for (int j = 0; j < removed.size(); j++) {
				if (objective[i] == removed[j]) {
					cout << removed[j] << endl;
					break;
				}
			}
		}
		cout << endl; 
	}
	return 0; 
}


相关文章推荐

programming-challenges Adventures in Moving - Part IV (111108) 题解

解题的思路网上有很多文章。我犯的一个错误在于没有卡住油箱的上限只能是200,而用了一个更大一点的边界210,结果算出来的结果是更优的。代码写的不好,不过也懒得整理了。dp这一章的题目都ac了。 #i...

programming-challenges Automated Judge Script (110305) 题解

#include #include #include #include #include #include #include #include #include #include ...

programming-challenges Longest Nap (110404) 题解

One thing to note, the items in the schedule list may not be given in the order of timeline. Here is...

programming-challenges Contest Scoreboard (110207) 题解

建立数据结构然后排序。第一次提交又犯了一个愚蠢的小错误。想想构造好的测试用例的能力也挺重要的。 #include #include #include #include #include #...

programming-challenges Shoemaker's Problem (110405) 题解

Greedy.  证明: Let's say we have job 1, 2, ..., n, and they have time and fine as t1, f1, t2...

programming-challenges Crypt Kicker (110204) 题解

我的解答,但是复杂度不是很满意,是一个指数级的复杂度.但是测试数据比较弱,还是ac了。在网上找了找,都是brute force的解法,不知道有没有更好的解法。 解答中犯了两个错误,第一个,map> ...

programming-challenges The Tourist Guide (110903) 题解

这片文章讲的思路很清晰。当然,用bfs也是一样可以解决这个问题的。最坑的是每次过不要忘记导游自己也占了一个名额。我就是想了好久都不明白为什么示例的答案是5而不是4,把导游忘了。 http://www...

programming-challenges File Fragmentation (110306) 题解

开始一直有错误原因在于疏忽了文件片断并不对称,所以需要尝试片断1加片断2和片断2加片断1两种结果。但是我的解法不够简明,在网上看到一个好的解法,一起贴在下面: #include #include ...

programming-challenges Stack 'em Up (110205) 题解

费了很大的力气在输出格式和读取输入数据上,输出和输入真得要按照题目描述非常严格的遵守: #include #include #include #include #include #incl...

programming-challenges Ferry Loading (111106) 题解

这道题做得很郁闷,思路很好懂,可是做得时候总是出问题,到现在也不知道最开始那种写法问题在什么地方。 #include #include #include #include #include ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:programming-challenges ShellSort (110407) 题解
举报原因:
原因补充:

(最多只允许输入30个字)