HDOJ 1106 排序 (字符串处理)
2013-04-18 00:11
501 查看
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1106
简单的字符串处理,注意以下数据即可
555500000
0000055555
0055550000
下面提供两种做法:
1.利用C语言库函数strtok(将函数按字符串分割)和atoi(将字符串转成int)
简单的字符串处理,注意以下数据即可
555500000
0000055555
0055550000
下面提供两种做法:
1.利用C语言库函数strtok(将函数按字符串分割)和atoi(将字符串转成int)
/*HDOJ1106 作者:陈佳润 2013-04-18 */ #include<iostream> #include<string.h> #include<stdlib.h> using namespace std; int cmp ( const void *a , const void *b ) { return *(long int *)a - *(long int *)b;//从小到大 //return *(int *)b - *(int *)a; //从大到小 } int main(){ char str[1005]; long int number[1005]; int num,i; //freopen("1.txt","r",stdin); while(scanf("%s",str)!=EOF){ char *p; num=0; p=strtok(str,"5"); while(p!='\0'){ number[num++]=atoi(p); p=strtok(NULL,"5"); } qsort(number,num,sizeof(long int),cmp); for(i=0;i<num;i++){ cout<<number[i]; if(i!=num-1) cout<<" "; } cout<<endl; } return 0; }2.标准做法
/*HDOJ1106 作者:陈佳润 2013-04-18 */ #include<iostream> #include<string.h> using namespace std; int main(){ int num,i,j; char str[1005]; long int number[1005],temp; // freopen("1.txt","r",stdin); while(scanf("%s",str)!=EOF){ memset(number,0,sizeof(number)); num=0;//第num个数 i=0;//字符串下标 while(str[i]=='5') i++;//消除刚开始出现的5 for(;str[i]!=0;i++){ if(str[i]=='5'&&(str[i+1]=='5'||str[i+1]==0)){//消除中间和后面的5 continue; } if(str[i]=='5'){//遇上5,则开始下一个数字的计算 num++; continue; } number[num]*=10; number[num]+=(str[i]-48); } for(i=0;i<=num;i++){//排序 for(j=i+1;j<=num;j++){ if(number[i]>number[j]){ temp=number[i]; number[i]=number[j]; number[j]=temp; } } } for(i=0;i<=num;i++){//输出 cout<<number[i]; if(i!=num) cout<<" "; } cout<<endl; } return 0; }
相关文章推荐
- HDOJ 1106 排序 (字符串处理)
- HDOJ 1106 排序 (字符串处理)
- hdu 1106:排序(水题,字符串处理 + 排序)
- HDOJ-1106 分解字符串、转化及排序问题总结[sscanf()函数+strtok()函数+atoi()函数]
- hdu 1106(字符串处理+排序)
- HDU 1106 排序 (排序+处理字符串)
- HDOJ1106 排序(字符串数字提取)
- 金山笔试题-字符串排序 :" 写一个函数,实现对给定的字符串(字符串里面包括:英文字母,数字,符号)的处理"
- uva 10815 Andy's First Dictionary(字符串处理+sort排序)
- hdu/hdoj 1106 排序
- 字符串 HDU 1106 排序
- [HDOJ1106]排序
- HDU 1106字符串处理
- HDOJ HDU 1106 排序 ACM 1106 IN HDU
- 王亟亟的Python学习之路(九)-sorted()排序以及简单字符串处理
- hdoj-1106-排序
- HDU 5427 A problem of sorting(字符串处理+排序)——BestCoder Round #54(div.2)
- hdoj 1217 Arbitrage(floyd+处理名字为字符串的情况)
- HDOJ 1106 排序
- 内排序- 字符串处理 字符与数字之间的对应关系