[华为机试练习题]11.最大递减数
来源:互联网 发布:mysql删除自增长 编辑:程序博客网 时间:2024/06/05 00:35
题目
给出一个非负整数,找到这个非负整数中包含的最大递减数。一个数字的递减数是指相邻的数位从大到小排列的数字。如: 95345323,递减数有:953,95,53,53,532,32, 那么最大的递减数为953。如果输入的数字为负数,返回-1。
代码
/*---------------------------------------* 日期:2015-06-29* 作者:SJF0115* 题目:最大递减数* 来源:华为上机-----------------------------------------*/#include <iostream>#include <vector>#include <string>#include <algorithm>using namespace std;int getMaxDegressiveNum (int num){ if(num < 0){ return -1; }//if vector<int> vec; string str = ""; int size = 0; while(num){ str.insert(str.begin(),num % 10+'0'); vec.insert(vec.begin(),num % 10); num /= 10; ++size; }//while for(int i = 1;i < size;++i){ if(str[i] < str[i-1]){ vec[i] = vec[i-1] * 10 + vec[i]; }//if }//for int Max = -1; for(int i = 0;i < size;++i){ if(Max < vec[i]){ Max = vec[i]; }//if }//for return Max;}int main(){ int n; freopen("C:\\Users\\Administrator\\Desktop\\c++.txt","r",stdin); while(cin>>n){ cout<<getMaxDegressiveNum(n)<<endl; }//while return 0;}
0 0
- [华为机试练习题]11.最大递减数
- 华为机试题:最大递减数
- [华为机试练习题]60.水仙花数
- 华为上机试题8(查找最大递减数)
- 最大递减数
- 最大递减数
- 最大递减数
- [华为机试练习题]58.查找同构数的数量
- 华为机试 - 最小最大数之和
- 两个机试题:对称密码;最大递减数
- 华为机试练习题汇总
- 华为机试在线练习题
- [华为机试练习题]56.求子数组的最大和
- 华为机试——求最大连续bit数
- 华为机试——最大递增数
- 【华为机试】求最大连续bit数
- OJ 系列之最大递减数
- [华为机试练习题]43.在字符串中找出连续最长的数字串
- 一句话理解闭包
- 玄武岩棉板和矿渣岩棉板性能对比
- Unicode字符集和多字节字符集关系
- java中泛型小结
- 常见报错
- [华为机试练习题]11.最大递减数
- linux下安装boost
- CODEVS1039
- How Does Linphone Toggle SIP Contact?
- Android应用程序打包时,出现错误:"XXX" is not translated in "af" (Afrikaans), "am" (Amharic), "ar" (Arabic).....
- Spring配置文件中突然出现异常Referenced file contains errors
- ASP.NET导入Excel到数据库(SQL)
- CorePlot学习
- 按比例布局