您的位置:首页 > 职场人生

【每日面试题】最大连续递增数字串

2012-03-05 17:34 881 查看
题目:求最大连续递增数字串(如“ads3sl456789DF3456ld345AA”中的“456789”)

代码如下:

void longIncrease(char* str)

{

if(str==NULL)

return ;

int len=strlen(str);

int max=0;

int n=1;

int first=0;

for(int i=0;i<len-1;i++)

{

if(str[i+1]>str[i]&&str[i]>='0'&&str[i]<='9'&&str[i+1]>='0'&&str[i+1]<='9')

{

n++;

}

else

{

if(n>max)

{

max=n;

first=i-max+1;

}

n=1;

}

}

if(n>max)

{

max=n;

first=0;

}

cout<<first<<endl;

for(int i=first;i<max+first;i++)

cout<<str[i];

cout<<endl;

}

int main()

{

char* str="ads3sl456789DF3456ld345AA";

longIncrease(str);

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: