题目描述 Description
有一副恶心的扑克,从小到大依次是3 , 4 , 5 , 6 , 7 , 8 , 9 , J , Q , K , A , 2 ,每种都有100张。现在输入一个string,每一个字符都是其中的一种,你的任务是:从小到大排序后输出。
输入描述 Input Description
参见样例
输出描述 Output Description
参见样例
样例输入 Sample Input
输入样例:4Q3KA292376J
输出样例:334679JQKA22
样例输出 Sample Output
输出样例:334679JQKA22
数据范围及提示 Data Size & Hint
字符串长度小于200
#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
int main()
{
char ch;
int vis[256]={0};
int s=0;
int ia[5]={0};
while(scanf("%c", &ch)!=EOF)
{
if(ch=='\n')
break;
vis[ch]++;
}
for(int i='2'+1;i<256;i++)
{
if(vis[i]!=0&&i!='A'&&i!='K')
{
printf("%c",i);
vis[i]--;
i--;
}
}
int i;
for(i=0;i<vis['K'];i++)
{
printf("K");
}
for(i=0;i<vis['A'];i++)
{
printf("A");
}
for(i=0;i<vis['2'];i++)
{
printf("2");
}
printf("\n");
return 0;
}