#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <algorithm>
#include <cmath>
#include <vector>
#include <list>
#include <set>
#include <map>
#include <unordered_set>
#include <unordered_map>
#include <queue>
#include <ctime>
#include <cassert>
#include <complex>
#include <string>
#include <cstring>
#include <chrono>
#include <random>
#include <bitset>
#include <sstream>
using namespace std;


#define vi vector<int>
#define vii vector< vector<int> >
#define ff first
#define ss second
#define pii pair<int64_t, int64_t>
#define mp make_pair
#define pb push_back
#define f(i,n) for(i=0;i<n;i++)

// vi dp(1000,1000);
int coins[] = {1, 2, 5, 10, 20, 50, 100, 200};
int k = INT16_MAX;
int ans= INT16_MAX;
int cal(int n)
{
    if(n==0) return 0;
    for(int i=0;i< 8;i++)
    {
        if(n>=coins[i])
        {
            // cout << n << " " << coins[i] << endl; 
            k = min(k, cal(n-coins[i])+1);
        }
        
    }

    return k;
}

int main()  
{   
    int i, n, j, k, l, t;
    
    // dp[0]=0;
    // cin >> n;
    cout << cal(19) << endl;
}