蓝桥杯 整数变换

原题目链接

问题描述

小蓝有一个整数 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
相关推荐
独行soc5 分钟前
2025年渗透测试面试题总结-字节跳动[实习]安全研发员(题目+回答)
linux·科技·安全·面试·职场和发展·渗透测试
梦境虽美,却不长15 分钟前
数据结构 线性表 学习 2025/6/12 21点27分
数据结构·学习
孟大本事要学习1 小时前
算法第15天:继续二叉树|前序递归+回溯与前序递归的场景总结、最大二叉树、合并二叉树、二叉搜索树中的搜索、验证二叉搜索树
算法
GalaxyPokemon1 小时前
LeetCode - 76. 最小覆盖子串
运维·服务器·数据结构·算法·leetcode
嵌入式@秋刀鱼1 小时前
《 第三章-招式初成》 C++修炼生涯笔记(基础篇)程序流程结构
linux·开发语言·数据结构·c++·笔记·visual studio code
HaiQinyanAN1 小时前
【学习笔记】重载和重写的注意事项
c++·笔记·学习
手握风云-1 小时前
动态规划算法的欢乐密码(二):路径问题
算法·动态规划
小马爱打代码1 小时前
数据结构 - Java 队列
java·数据结构
西北大程序猿2 小时前
服务器代码知识点补充
服务器·开发语言·网络·c++·网络协议
Raven100862 小时前
L1G2-OpenCompass 评测书生大模型实践
算法