求最大递增数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求最大递增数相关的知识,希望对你有一定的参考价值。
题目:
描述:
输入一串数字,找到其中包含的最大递增数。递增数是指相邻的数位从小到大排列的数字。如: 2895345323,递增数有:289,345,23, 那么最大的递减数为345。
输入:
输入一串数字,默认这串数字是正确的,即里面不含有字符/空格等情况
输出:
输出最大递增数
样例输入:
123526897215
样例输出:
2689
代码:
#include "cstdio" #include "algorithm" #include "cstring" #include "cmath" using namespace std; char s[500]; int main() { int ans=0,maxn; while (scanf("%s",s)==1){ int n=strlen(s); ans=s[0]-‘0‘; maxn=ans; for(int i=1;i<n;i++){ if(s[i]>s[i-1]){ ans=ans*10+s[i]-‘0‘; } else { maxn=max(ans,maxn); ans=s[i]-‘0‘; maxn=max(ans,maxn); } } printf("%d\n",maxn); } return 0; }
以上是关于求最大递增数的主要内容,如果未能解决你的问题,请参考以下文章
2022-08-22:给定一个数组arr,长度为n,最多可以删除一个连续子数组, 求剩下的数组,严格连续递增的子数组最大长度。 n <= 10^6。 来自字节。5.6笔试。