3184:練30.2 錯誤減法

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。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章