Problem D
Accepts: 2346
Submissions: 6884
Time Limit: 2000/1000 MS (Java/Others)
Memory Limit: 65536/65536 K (Java/Others)
这道题很简单了 对字符串排序 计算次数 就行了使用map
cin输入好像特浪费时间 最好用scanf 我用cin 998ms......
#include <stdio.h>
#include <algorithm>
#include <iostream>
#include <map>
using namespace std;
int main()
{
int n;
while(~scanf("%d",&n))
{
map<string,int>mp;
string str;
for(int i=0;i<n;i++)
{
cin>>str;
sort(str.begin(),str.end(),less<char>() );
cout<<mp[str]<<endl;
mp[str]++;
}
}
return 0;
}
468ms
#include <stdio.h>
#include <algorithm>
#include <iostream>
#include <string.h>
#include <map>
using namespace std;
int main()
{
int n;
while(~scanf("%d",&n))
{
map<string,int>mp;
char str[100];
for(int i=0;i<n;i++)
{
//cin>>str;
scanf("%s",str);
int len=strlen(str);
sort(str,str+len);
printf("%d\n",mp[str]);
mp[str]++;
}
}
return 0;
}