zoukankan      html  css  js  c++  java
  • 2014华为校招机考模拟--求最大递增数

    描述:

    输入一串数字,找到其中包含的最大递增数。递增数是指相邻的数位从小到大排列的数字。如: 2895345323,递增数有:289,345,23, 那么最大的递减数为345。

    运行时间限制:

    无限制

    内存限制:

    无限制

    输入:

    输入一串数字,默认这串数字是正确的,即里面不含有字符/空格等情况

    输出:

    输出最大递增数

    样例输入:

    123526897215

    样例输出:

    2689

    答案提示:

     

    一道基础的动态规划算法题,采用C++实现。代码如下:

     1 #include <iostream>
     2 using namespace std;
     3 int main()
     4 {
     5     char num[50];
     6     int currentValue=0;
     7     int maxValue=0;
     8     while (cin>>num)
     9     {
    10         int i=0;
    11         for (i=0;num[i];i++)
    12         {
    13             currentValue=currentValue*10+num[i]-'0';
    14             if(num[i]>=num[i+1])
    15             {
    16                 if(currentValue>maxValue)
    17                     maxValue=currentValue;
    18                 currentValue=0;
    19             }
    20         }
    21         cout<<maxValue<<endl;
    22         maxValue=0;
    23     }
    24     return 0;
    25 }

    运行结果:

  • 相关阅读:
    c基础
    一维数组,字符数组
    循环结构
    分支结构
    结构体
    Python简介和入门
    Python基础(一)
    Markdown 基础学习
    PyCharm 专业版安装
    Python基础(二)
  • 原文地址:https://www.cnblogs.com/LiuYujie/p/3956319.html
Copyright © 2011-2022 走看看