3184:练30.2 错误减法
时间限制: 1000 ms 内存限制: 65536 KB
提交数: 2436 通过数: 1923
【题目描述】
小明现在正在学习如何将一个数减去 1,但是他在处理两位数以上,位数更高的数的时候出现了错误。小明对于一个数做以下的运算:
如果一个数的个位不是 0,他将这个数减去1。
如果一个数的个位是 0,他将这个数除以10。
你现在有一个整数 n。小明会进行 k 次运算。你的任务是求出小明在对这个整数进行 k 次运算之后得到的结果。
【输入】
输入的第一行包含两个整数 n 和 k(2≤n≤109,1≤k≤50)。
【输出】
输出只有一个整数——小明对整数 n 执行了 k 次操作后的结果。
#include<bits/stdc++.h>
using namespace std;
int main(){
int k,n;
cin>>k>>n;
for(int i=0;i<n;i++){
if(k%10==0){
k = k/10;
}else{
k--;
}
}
cout<<k;
return 0;
}
解题思路:在代码中,循环次数给定为n次,k是给定的数字,for循环循环n次,for循环中每次循环做判断个位数是否为0,如果是0那么除以10,如果不是0那么自减1。
标签:小明,int,30.2,整数,3184,循环,减法 From: https://www.cnblogs.com/Andre/p/18065843