//pragma region Macros
// #pragma GCC target("avx2")
#pragma GCC optimize("O3")
// #pragma GCC optimize("unroll-loops")
#include <bits/stdc++.h>

#define ld long double
#define rep2(i, a, b) for(ll i = a; i <= b; ++i)
#define rep(i, n) for(ll i = 0; i < n; ++i)
#define rep3(i, a, b) for(ll i = a; i >= b; --i)
#define pii pair<int, int>
#define pll pair<ll, ll>
#define pb push_back
#define eb emplace_back
#define vi vector<int>
#define vll vector<ll>
#define vpi vector<pii>
#define vpll vector<pll>
#define fi first
#define se second
#define all(c) begin(c), end(c)
#define SUM(v) accumulate(all(v), 0LL)
#define MIN(v) *min_element(all(v))
#define MAX(v) *max_element(all(v))
#define lb(c, x) distance((c).begin(), lower_bound(all(c), (x)))
#define ub(c, x) distance((c).begin(), upper_bound(all(c), (x)))
using namespace std;
using ll=long long int ;

int main()
{
	/*int t ;
	cin>>t;
	while(t--)
	{  */
     
	ll k ;
    cin>>k;
  
    ll ans =0;
  
    for(int x=1;x<=k;x++)
    {
      for(int y=1;x*y<=k;y++)
      {
        for(int z=1;x*y*z<=k;z++)
        {
          if(x*y*z<=k)
            ans++;
        }
      }
    }
  
  
  cout<<ans<<endl;
	
   // }
	return 0;
}
#include<stdio.h>
#define putint(a) printf("%lld\n", a)
#define nextint(a) scanf("%lld\n", &a)
int N;
int main(){
  if(nextint(N)==1){
    int ans = 0;
    for(long long int i=1; i<=N; i++){
      for(int j=1; i*j<=N; j++){
        ans+= N/(i*j);
      }
    }
    putint(ans);
  }
}