Monday, June 8, 2015

UVa 482 - Permutation Arrays

// UVa 482 - Permutation Arrays
#include <vector>
#include <iostream>
#include <string>
#include <sstream>
#include <algorithm>
using namespace std;

struct entry {
	int i;
	string d;
};

bool operator<(const entry & a, const entry & b) {
	return a.i < b.i;
}

int main() {
	int cases;
	cin >> cases;
	string line;
	getline(cin, line);
	for (; cases; cases--) {
		getline(cin, line);
		getline(cin, line);
		istringstream strm1(line);
		getline(cin, line);
		istringstream strm2(line);
		int i;
		string j;
		vector<entry> v;
		while (strm1 >> i) {
			strm2 >> j;
			entry p = { i, j };
			v.push_back(p);
		}
		sort(v.begin(), v.end());
		for (int k = 0; k < v.size(); k++)
			cout << v[k].d << endl;
		if (cases > 1)
			cout << endl;
	}
	return 0;
}

No comments:

Post a Comment