Submission details
Task:Deleting digits
Sender:aalto26em_005
Submission time:2026-09-28 16:22:11 +0300
Language:C++ (C++20)
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.01 sdetails
#2ACCEPTED0.01 sdetails
#3ACCEPTED0.01 sdetails
#4ACCEPTED0.01 sdetails
#5ACCEPTED0.01 sdetails
#6ACCEPTED0.01 sdetails
#7ACCEPTED0.02 sdetails
#8ACCEPTED0.04 sdetails
#9ACCEPTED0.20 sdetails
#10ACCEPTED0.35 sdetails
#11ACCEPTED0.35 sdetails
#12ACCEPTED0.35 sdetails
#13ACCEPTED0.01 sdetails

Code

#include <bits/stdc++.h>
using namespace std;

using ll = long long;
constexpr int INF = 1'000'000'000; // 1e9
constexpr ll LINF = 1'000'000'000'000'000'000LL; // 1e18

unordered_set<int> digits(int n) {
    unordered_set<int> set;
    for (;n > 0; n/=10) {
        set.insert(n%10);
    }
    set.erase(0);
    return set;
}

void solve() {
    int n;
    cin >> n;

    array<int, 1'000'001> steps = {};
    
    steps[0]=0;
    int m = 0;
    for(int i = 1; i<=n; i++) {
        auto set = digits(i);
        m = INF;
        for (auto s: set) {
            if (i - s >= 0) {
                m = min(m, steps[i - s]);
            }
        }
        steps[i] = m + 1;
    }
    cout << steps[n];
}

int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);

    solve();

    return 0;
}

Test details

Test 1

Verdict: ACCEPTED

input
4

correct output
1

user output
1

Test 2

Verdict: ACCEPTED

input
17

correct output
3

user output
3

Test 3

Verdict: ACCEPTED

input
35

correct output
7

user output
7

Test 4

Verdict: ACCEPTED

input
167

correct output
29

user output
29

Test 5

Verdict: ACCEPTED

input
4434

correct output
687

user output
687

Test 6

Verdict: ACCEPTED

input
9722

correct output
1381

user output
1381

Test 7

Verdict: ACCEPTED

input
37882

correct output
5406

user output
5406

Test 8

Verdict: ACCEPTED

input
103330

correct output
13867

user output
13867

Test 9

Verdict: ACCEPTED

input
562167

correct output
75527

user output
75527

Test 10

Verdict: ACCEPTED

input
991919

correct output
127308

user output
127308

Test 11

Verdict: ACCEPTED

input
999993

correct output
128206

user output
128206

Test 12

Verdict: ACCEPTED

input
999999

correct output
128206

user output
128206

Test 13

Verdict: ACCEPTED

input
23456

correct output
3364

user output
3364