华为9.11第三题代码

// 航班.cpp : 定义控制台应用程序的入口点。
//

//#include "stdafx.h"
#include<iostream>
#include<vector>
#include<string>
#include<algorithm>
#include<list>
#include<map>
#include<set>
#include<unordered_set>
using namespace std;


int main()
{
	int n;
	cin >> n;
	map<string, map<string, string>> hangban;
	//set<hangban> vhangban;
	for (int i = 0; i < n; i++)
	{
		string s;
		cin >> s;
		int n = s.find(',');
		string name = s.substr(0, n);
		int m = s.find(',', n + 1);
		string wz = s.substr(n + 1, m - n - 1);
		string username = s.substr(m + 1, s.size() - 1);
		hangban[name].insert(pair<string,string>(wz, username));
	}
	int K;
	cin >> K;
	for (int i = 0; i < K; i++)
	{
		string s;
		cin >> s;
		int n=s.find(',');
		string hangbanid = s.substr(0, n);
		int m = s.find(',',n+1);
		string hangbanwz = s.substr(n + 1, m - n - 1);
		int k = s.find(',',m+1);
		string newhangbanid = s.substr(m+1, k-m-1);
		string newhangbanwz = s.substr(k+ 1);
		string uname = hangban[hangbanid][hangbanwz];
		hangban[hangbanid].erase(hangban[hangbanid].find(hangbanwz));
		hangban[newhangbanid][newhangbanwz] = uname;

	}
	for (map<string, map<string, string>>::iterator it = hangban.begin(); it != hangban.end(); it++)
	{
			for (map<string, string> ::iterator iit = it->second.begin(); iit != it->second.end(); iit++)
			{
				cout << it->first << "," << iit->first << "," << iit->second<<endl;
			}	
	}
	system("pause");
	return 0;
}


#笔试题目#
全部评论
能分享一下具体的题目吗
点赞 回复 分享
发布于 2019-09-12 17:49

相关推荐

评论
点赞
3
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务