本文主要是介绍hdu 1106 排序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
http://acm.hdu.edu.cn/showproblem.php?pid=1106
这个题意很明了,5是分割点,然后分割数,注意有0的特殊情况,
然后就到我经常忘记的一种构造法,
把 字府串 构造成 整数 ,所以记下。
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm> using namespace std; int main() { //freopen("in.txt","r",stdin); char str[1010]; int num[1010],i,j; while(scanf("%s",str)!=EOF) { int len=strlen(str),k=0; for(i=0;i<len;i++) { int sum=0; for(j=i;str[j]!='5'&&str[j];j++) { sum*=10; sum+=str[j]-'0'; //注意这里的构造} i=j; if(i!=0&&str[i-1]!='5')num[k++]=sum; } sort(num,num+k); for(int i=0;i<k;i++) { printf("%d",num[i]); if(i!=k-1)printf(" "); } printf("\n"); } return 0; }
这篇关于hdu 1106 排序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!