#include<bits/stdc++.h>
using namespace std;
#define rep(i,n) for(long i=0;i<(long)(n);i++)
#define all(obj) (obj).begin(),(obj).end()
typedef long long ll;
ll mod=1e10+7;

int main(void){
    long n;
    cin>>n;
    int m=0;
    int a[4];
    a[0]=n/25;
    n%=25;
    a[1]=n/10;
    n%=10;
    a[2]=n/5;
    a[3]=n%5;
   for(int i=0;i<4;i++){
       m+=a[i];
   }
    cout<<m<<endl;
    return 0;
}


### Prompt

Your challenge is to write a Cpp solution to the following problem:

You want to make change for $ n $ cents. Assuming that you have infinite supply of coins of 1, 5, 10 and / or 25 cents coins respectively, find the minimum number of coins you need.

Constraints

* $ 1 \ le n \ le 10 ^ 9 $

Input


$ n $


The integer $ n $ is given in a line.

output

Print the minimum number of coins you need in a line.

Examples

Input

100


Output

4


Input

54321


Output

2175

### Response

```cpp
#include<bits/stdc++.h>
using namespace std;
#define rep(i,n) for(long i=0;i<(long)(n);i++)
#define all(obj) (obj).begin(),(obj).end()
typedef long long ll;
ll mod=1e10+7;

int main(void){
    long n;
    cin>>n;
    int m=0;
    int a[4];
    a[0]=n/25;
    n%=25;
    a[1]=n/10;
    n%=10;
    a[2]=n/5;
    a[3]=n%5;
   for(int i=0;i<4;i++){
       m+=a[i];
   }
    cout<<m<<endl;
    return 0;
}


```