您的位置:首页 > 其它

HDU 2648 map

2015-09-23 00:18 274 查看

Shopping

Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)

Total Submission(s): 2560    Accepted Submission(s): 885


[align=left]Problem Description[/align]
Every girl likes shopping,so does dandelion.Now she finds the shop is increasing the price every day because the Spring Festival is coming .She is fond of a shop which is called "memory". Now she wants to know the rank of this shop's
price after the change of everyday.
 

[align=left]Input[/align]
One line contians a number n ( n<=10000),stands for the number of shops.

Then n lines ,each line contains a string (the length is short than 31 and only contains lowercase letters and capital letters.)stands for the name of the shop.

Then a line contians a number m (1<=m<=50),stands for the days .

Then m parts , every parts contians n lines , each line contians a number s and a string p ,stands for this day ,the shop p 's price has increased s.

 

[align=left]Output[/align]
Contains m lines ,In the ith line print a number of the shop "memory" 's rank after the ith day. We define the rank as :If there are t shops' price is higher than the "memory" , than its rank is t+1.
 

[align=left]Sample Input[/align]

3
memory
kfc
wind
2
49 memory
49 kfc
48 wind
80 kfc
85 wind
83 memory

 

[align=left]Sample Output[/align]

1
2#include<cstdio>
#include<iostream>
#include<map>
#include<string>
#include<cstring>
#include<algorithm>
using namespace std;
bool cmp(int x,int y)
{
return x>y;
}
int main()
{
int n=0;
map<string,int> G; 
while(scanf("%d",&n)!=EOF)
{
char c[50];
int s[50005]={0};
getchar();
for(int i=1;i<=n;i++)
{
string a;
scanf("%s",c);
getchar();
a=c;
G[a]=0;
   }
   int m=0;
   scanf("%d",&m);
   getchar();
   for(int i=1;i<=m;i++)
   {
    for(int j=1;j<=n;j++)
    {
    char cc[50];
    int ss=0;
    string a;
    scanf("%d %s",&ss,cc);
    getchar();
    a=cc;
    G[a]+=ss;
    s[j]=G[a];
}
sort(s+1,s+n+1,cmp);
for(int j=1;j<=n;j++)
if(s[j]==G["memory"])
{
printf("%d\n",j);
break;
}
}
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: