H面试程序(29):求最大递增数
要求:求最大递增数
如:1231123451
输出12345
#include<stdio.h> #include<assert.h> void find(char *s) { int maxleng = 0; int length = 1; int pos = 0; int i = 0; while(s[i] !='\0') { if((s[i])<'0'||(s[i]>'9')) { assert(0); } if((s[i+1]-'0') > (s[i] -'0')) { length++; i++; continue; } if(length > maxleng) { maxleng = length; pos = i -maxleng; pos++; length = 1; i++; continue; } i++; length = 1; } for(int j =0; j < maxleng; j++) { printf("%c",s[pos++]); } } int main( ) { char s[100]; scanf("%s",s); find(s); return 0; }
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步