您的位置:首页 > 其它

HDU 1106 排序

2016-04-20 16:32 232 查看
用了两个库函数,一下子把题目简化了很多!很多情况全部使用,上代码:
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <algorithm>

using namespace std;

int main(){
char s[1005];
int ans[1005];
char *a;
int j;

while(cin>>s){  //输入字符串
int tmp = 0;
a=strtok(s,"5"); //分割字符串
while(a){        //判断返回是否为NULL

ans[tmp++]=atoi(a);  //把字符型数字转换成整形!不用在用乘加法了。

a=strtok(NULL,"5");  //换下一个分割的标记串,如果有返回ture,否则false
}

sort(ans,ans+tmp);  //把转换的整形排序了
for(j=0;j<tmp;j++)
if(j!=tmp-1)
cout<<ans[j]<<" ";
else
cout<<ans[j];   //OJ常见格式,最后一个分割串没空格
cout<<endl;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: