老年人也学计算机 2021-12-19 09:04 采纳率: 75%
浏览 147
已结题

用C/C++实现数字递增问题?

给定一个正整数 n,请判断 n 的所有数位上的值是否从左到右是严格递增的。
  例如:1589 是严格递增的。
  再如:1336 不是严格递增的,中间有相同的 3。
  再如:1598 不是严格递增的。
输入格式
  输入一行包含一个整数 n。
输出格式
  如果是严格递增的,输出“YES”(全大写),否则输出“NO”(全大写)。
样例输入
1589
样例输出
YES
样例输入
1336
样例输出
NO
评测用例规模与约定
  对于所有评测用例,1 <= n <= 1000000000。

  • 写回答

3条回答 默认 最新

  • togolife 2021-12-19 09:39
    关注
    
    #include <iostream>
    using namespace std;
    
    int main(void)
    {
        long n;
        cin >> n;
        int last = -1;
        int curr = 0;
        bool flag = true;
        while (n > 0 && flag) {
            if (last == -1) {
                last = n % 10;
            } else {
                curr = n % 10;
                if (curr >= last) {
                    flag = false;
                }
                last = curr;
            }
            n /= 10;
        }
        cout << (flag ? "YES" : "NO") << endl;
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 12月19日
  • 已采纳回答 12月19日
  • 创建了问题 12月19日

悬赏问题

  • ¥15 matlab生成电测深三层曲线模型代码
  • ¥50 随机森林与房贷信用风险模型
  • ¥50 buildozer打包kivy app失败
  • ¥30 在vs2022里运行python代码
  • ¥15 不同尺寸货物如何寻找合适的包装箱型谱
  • ¥15 求解 yolo算法问题
  • ¥15 虚拟机打包apk出现错误
  • ¥15 用visual studi code完成html页面
  • ¥15 聚类分析或者python进行数据分析
  • ¥15 三菱伺服电机按启动按钮有使能但不动作