蓝桥杯 整数变换

原题目链接

问题描述

小蓝有一个整数 n。每分钟,小蓝的数都会发生变化,变为上一分钟的数减去上一分钟的数的各个数位和。

例如,如果小蓝开始时的数为 23,则:

  • 下一分钟变为:23 − (2 + 3) = 18
  • 再下一分钟变为:18 − (1 + 8) = 9
  • 再下一分钟变为:9 − 9 = 0

共经过了 3 分钟变为 0。

给定一个正整数,请问这个数多少分钟后变为 0。


输入格式

输入一行包含一个整数 n


输出格式

输出一个整数,表示答案。


样例输入

in 复制代码
23

样例输出

out 复制代码
3

评测用例规模与约定

  • 对于 30% 的评测用例,1 ≤ n ≤ 1000
  • 对于 60% 的评测用例,1 ≤ n ≤ 10^6
  • 对于所有评测用例,1 ≤ n ≤ 10^9

c++代码

cpp 复制代码
#include<bits/stdc++.h>

using namespace std;

int change(int x) {
    int sum = x;
    while(x > 0) {
        sum -= x % 10;
        x /= 10;
    }
    return sum;
}

int main() {
    int n, cont = 0;
    cin >> n;
    while(n > 0) {
        cont++;
        n = change(n);
    }
    cout << cont;
    return 0;
}//by wqs
相关推荐
ulias21212 分钟前
智能指针简述
开发语言·c++·算法
阿昭L13 分钟前
Windows通用的C/C++工程CMakeLists
c语言·c++·windows·makefile·cmake
寻寻觅觅☆14 分钟前
东华OJ-基础题-58-素数表(C++)
开发语言·c++·算法
桦014 分钟前
【C++复习】:多态
c++
AI成长日志14 分钟前
【强化学习专栏】深度拆解:多智能体强化学习核心理论与工程实践
算法
Flying pigs~~15 分钟前
基于TF_IDF和Bagging的文本分类全过程
算法·随机森林·机器学习·nlp·文本分类
树獭叔叔18 分钟前
FFN 激活函数深度解析:从 ReLU 到 SwiGLU 的演进之路
算法·aigc·openai
炘爚28 分钟前
单链表如何逆置
数据结构
啊我不会诶33 分钟前
最小生成树
c++·笔记·学习·算法
淀粉肠kk35 分钟前
【C++】C++11 Lambda表达式
开发语言·c++