题目来源:http://acm.nyist.net/JudgeOnline/problem.php?pid=4
ASCII码排序
时间限制:3000 ms | 内存限制:65535 KB
难度:2
- 描述
- 输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。
- 输入
- 第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。
- 输出
- 对于每组输入数据,输出一行,字符中间用一个空格分开。
- 样例输入
-
3 qwe asd zxc
- 样例输出
-
e q w a d s c x z
分析:假设有多个字符n输入。
代码如下:#include <cstdlib> #include <cstring> #include <algorithm> #include <cstdio> #include <cmath> #include <iostream> #include <vector> #include<string> #include<cstring> #include<string.h> #include<set> #include<queue> using namespace std; typedef long long ll; #define N 101 int main() { int t,ans,n; cin>>t; while(t--) { char c; multiset<char>s; multiset<char>::iterator it; cin>>n; for(int i=0;i<n;i++) { cin>>c; s.insert(c); } int j=0; // 标记符号的输出 for(it=s.begin();it!=s.end();it++,j++) { if(j!=(s.size()-1)) printf("%c ",*it); else printf("%c\n",*it); } } return 0; }