Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- #define ll long long
- #define ull unsigned long long int
- #define ld long double
- #define pb push_back
- #define p_b pop_back
- #define si stack<int>
- #define sll stack<ll>
- #define sc stack<char>
- #define vi vector<int>
- #define vll vector<ll>
- #define mii map<int, int>
- #define msi map<string, int>
- #define mci map<char, int>
- #define qc queue<char>
- #define qi queue<int>
- #define qll queue<ll>
- using namespace std;
- ull power(int n, int b){
- if(b == 0){
- return 1;
- } else{
- if(b%2 == 0){
- return power(n, b/2)*power(n, b/2);
- } else{
- return n*power(n, (b-1)/2)*power(n, (b-1)/2);
- }
- }
- }
- int main(){
- ios_base::sync_with_stdio(false);
- cin.tie(NULL);
- ull n, m, count = 0;
- cin >> n;
- while(n > 0){
- int dp[10] = {0}, digits = 1;
- m = n;
- while(m > 0){
- dp[m%10] = digits;
- m /= 10;
- digits++;
- }
- for(int i = 9; i >= 0; i--){
- if(dp[i] > 0){
- if(i == 9){
- n -= 9*power(10, dp[i]-1);
- count += power(10, dp[i]-1);
- } else if(i > 0){
- n -= i;
- count++;
- }
- break;
- }
- }
- }
- cout << count << "\n";
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement