#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using vi = vector<ll>;
using vvi = vector<vi>;
using ii = pair<ll, ll>;
using vii = vector<ii>; 
#define deb(x) cout << #x << "=" << x << endl
#define deb2(x, y) cout << #x << "=" << x << "," << #y << "=" << y << endl
#define all(x) x.begin(), x.end()
#define clr(x) memset(x, 0, sizeof(x))
#define sortall(x) sort(all(x))
#define pb push_back
#define mp make_pair
#define F first
#define S second
#define tr(it, a) for (auto it = a.begin(); it != a.end(); it++)
#define PI 3.1415926535897932384626
const ll mod = 1000000007;
const ll N = 3e5, M = N;
vi g[N];

void solve() {
    ll i, j, n, m, k;
    cin >> n;
    if(n % 100 == 0) {
        cout << n / 100;
    } else {
        cout << n/100 + 1;
    }
}

int main() {
    ll tc = 1;
    for(ll t = 0; t < tc; t++) {
        solve();
    }
    return 0;
}


/**
 *  created: 21/03/2021, 13:15:10
**/

#include <bits/stdc++.h>

using namespace std;

const int max_n = 100111, inf = 1000111222;

int n, dp[max_n];
vector<int> all[max_n];

int main() {
    //freopen("input.txt", "r", stdin);
    //freopen("output.txt", "w", stdout);
    scanf("%d", &n);
    for (int i = 1; i < max_n; ++i) {
        for (int j = 2 * i; j < max_n; j += i) {
            all[j].push_back(i);
        }
    }
    for (int i = 1; i <= n; ++i) {
        for (int x : all[i]) {
            dp[i] = max(dp[i], dp[x]);
        }
        ++dp[i];
        printf("%d ", dp[i]);
    }
    puts("");
    return 0;
}
