UVA 10420 - List of Conquests
题目大意:按字典序字符串排序,顺带加上有几个相同的字符串
解题思路:字符串比较strcmp,排序qsort,然而qsort不会写,只能用algorithm里的
#include<cstdio>
#include<algorithm>
#include<cstring>
char map[5000][100];
char temp[100];
int cmp(const void*str1,const void*str2)
{
char*s1=(char*)str1;
char*s2=(char*)str2;
return strcmp(s1,s2);
}
int main(){
int c;
scanf("%d",&c);
for(int i = 0 ; i < c;i++)
{
scanf("%s",map[i]);
gets(temp);
}
qsort(map,c,100,cmp);
int count=0;
int ca=0;
for(int i=0;i< c;i++)
{
if(!strcmp(map[i],map[i+1]))
{
continue;
}
ca++;
}
for(int i=0;i< c;i++)
{
if(!strcmp(map[i],map[i+1]))
{ count++;
continue;
}
printf("%s %d\n",map[i],count+1);
if(!ca)
{
printf("\n");
}
count=0;
}
return 0;
}