比赛 20111110 评测结果 AAAATTTTTT
题目名称 韩国明星 最终得分 40
用户昵称 song 运行时间 0.000 s
代码语言 C++ 内存使用 0.00 MiB
提交时间 2011-11-10 10:28:38
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int n,k,l[100010];
long long h[100010]={0};
char name[100010][100];
int main()
{
	freopen("star.in","r",stdin);
	freopen("star.out","w",stdout);
	cin>>n;
	for(int i=0;i<n;i++)
	{
		cin>>name[i];
		l[i]=strlen(name[i]);
	}
	cin>>k;
	for(int i=0;i<k;i++)
	{
		char q[40]={0};
		int g=0;
		cin>>q>>g;
		for(int j=0;j<n;j++)
		{
			if(strcmp(q,name[j])==0)
			{
				h[j]+=g;
				break;
			}
		}
	}
	for(int i=0;i<n-1;i++)
	{
		for(int j=0;j<n-1;j++)
		{
			if(h[j]<h[j+1])
			{
				int o;
				char p[40]={0};
				for(int u=0;;u++)
				{
				    p[u]=name[j][u];
				    name[j][u]=name[j+1][u];
				    name[j+1][u]=p[u];
					if(u>=l[j]&&u>=l[j+1])
						break;
				}
				o=h[j];
				h[j]=h[j+1];
				h[j+1]=o;
			}
		}
	}
	for(int i=0;i<n;i++)
	{
		cout<<name[i]<<endl;
		cout<<h[i]<<endl;
	}
}