记录编号 336646 评测结果 AAAAAAAAAA
题目名称 韩国明星 最终得分 100
用户昵称 GravatarNemoAre 是否通过 通过
代码语言 C++ 运行时间 0.994 s
提交时间 2016-11-03 15:57:54 内存使用 0.28 MiB
显示代码纯文本
#include<cstdio>
#include<string>
#include<vector>
#include<algorithm>
#include<map>
using namespace std;
typedef pair<string,int> PAIR;
struct cmp{
	bool operator()(const PAIR &P1,const PAIR &P2){
		return P1.second<P2.second;
	}
};
map<string,int> stars;
int main(){
	int n; char name[1000];
	FILE *fp,*fp1;
	fp = fopen("star.in","r");
	fp1 = fopen("star.out","w+");
	fscanf(fp,"%d",&n);
	fgets(name,1000,fp);
	for(int i=0;i<n;i++){
		fgets(name,1000,fp);
		if(name==""){
			i--;
			continue;
		}
		stars.insert(pair<string,int>(name,0));
	}
	int k,temp;
	fscanf(fp,"%d",&k);
	fgets(name,1000,fp);
	for(int i=0;i<k;i++){
		fgets(name,1000,fp);
		fscanf(fp,"%d",&temp);
		stars[name] += temp;
		fgets(name,1000,fp);
	}
	vector<PAIR> t(stars.begin(),stars.end());
	sort(t.begin(),t.end(),cmp());
	for(int i=n-1;i>=0;i--){
		const char *s = t[i].first.c_str();
		fprintf(fp1,"%s%d\n",s,t[i].second);
	}
	return 0;
}