Gửi bài giải
Điểm:
10,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch
cb015 Biến đổi về 0 Cho số nguyên n. Mỗi lần biến đổi, bạn có thể trừ số n cho bất kì 1 chữ số nào của n. Hãy cho biết số lần ít nhất để biến số n thành 0. Ví dụ số n = 37 thì có thể biến đổi như sau: 37 --> 30-->27-->20-->18-->10-->9-->0 Như vậy cần 7 lần biến đổi Ví dụ 57 là = bao nhiêu? 57->50->45->40->36->30->27->20->18->10->9->0 11 Input 37 Output 7
Bình luận
C++:
include <iostream>
include <string>
using namespace std;
void cb015() { int n; cin >> n; int dem = 0; while(n != 0) { int s = n; int max = 0; while(s != 0) { int d = s % 10; if(max < d) { max = d; } s /= 10; } n -= max; dem++; } cout << dem; }
int main() { cb015(); return 0; }
Java: package cb;
import java.util.ArrayList; import java.util.Scanner;
public class cb015 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n,dem = 0; n = sc.nextInt(); while (n != 0) { int s = n; int max = 0; while(s!=0) { int d = s % 10; if(max < d) { max = d; } s = s / 10; } n -= max; dem++; }
}