#include<bits/stdc++.h>
using namespace std;
#define ll long long 
#define debug(a,n) for(ll i = 0;i<n;i++) cout<<a[i]<<" ";
#define sum(a,n,s) for(ll i = 0;i<n;i++) s+=a[i];
#define scan(a,n) for(ll i = 0;i<n;i++) cin>>a[i];
ll counter=0;
vector <ll>  SieveOfEratosthenes(ll n) 
{ 
    vector <ll> ans; 
    bool prime[n+1]; 
    memset(prime, true, sizeof(prime)); 
  
    for (int p=2; p*p<=n; p++) 
    { 
        if (prime[p] == true) 
        { 
    
            for (int i=p*p; i<=n; i += p) 
                prime[i] = false; 
        } 
    } 
  
    // Print all prime numbers 
    for (int p=2; p<=n; p++) 
       if (prime[p]) 
            ans.push_back(p);
    return ans;
} 
vector <ll> sievo(ll N)
{
    ll lp[N+1];
    vector<ll> pr;
    memset(lp,0,sizeof lp);
    for (ll i=2; i<=N; ++i) {
        if (lp[i] == 0) {
            lp[i] = i;
            pr.push_back (i);
        }
        for (ll j=0; j<(ll)pr.size() && pr[j]<=lp[i] && i*pr[j]<=N; ++j)
            lp[i * pr[j]] = pr[j];
    }

    return pr;
}
long long compute_hash(string s) {
    const int p = 31;
    const int m = 1e9 + 9;
    long long hash_value = 0;
    long long p_pow = 1;
    for (char c : s) {
        hash_value = (hash_value + (c - 'a' + 1) * p_pow) % m;
        p_pow = (p_pow * p) % m;
    }
    return hash_value;
}
ll power(ll x, unsigned ll y, ll p)  
{  
    ll res = 1;     // Initialize result  
  
    x = x % p; // Update x if it is more than or  
                // equal to p 
   
    if (x == 0) return 0; // In case x is divisible by p; 
  
    while (y > 0)  
    {  
        // If y is odd, multiply x with result  
        if (y & 1)  
            res = (res*x) % p;  
  
        // y must be even now  
        y = y>>1; // y = y/2  
        x = (x*x) % p;  
    }  
    return res;  
}
vector<int> rabin_karp(string const& s, string const& t) {
    const int p = 31; 
    const int m = 1e9 + 9;
    int S = s.size(), T = t.size();

    vector<long long> p_pow(max(S, T)); 
    p_pow[0] = 1; 
    for (int i = 1; i < (int)p_pow.size(); i++) 
        p_pow[i] = (p_pow[i-1] * p) % m;

    vector<long long> h(T + 1, 0); 
    for (int i = 0; i < T; i++)
        h[i+1] = (h[i] + (t[i] - 'a' + 1) * p_pow[i]) % m; 
    long long h_s = 0; 
    for (int i = 0; i < S; i++) 
        h_s = (h_s + (s[i] - 'a' + 1) * p_pow[i]) % m; 

    vector<int> occurences;
    for (int i = 0; i + S - 1 < T; i++) { 
        long long cur_h = (h[i+S] + m - h[i]) % m; 
        if (cur_h == h_s * p_pow[i] % m)
            occurences.push_back(i);
    }
    return occurences;
}
ll check(vector <ll> &arr,ll l, ll n)
{

    if(arr[0]<0||arr[n-1]<0)
    {
        return 0;
    }
    if(n==1)
    {
        return arr[l]==0;
    }
    arr[l+1]-= arr[l];
    if(arr[l+1]<0)
    {
        arr[l+1]+=arr[l];
        return 0;
    }
    
    ll ans = check(arr,l+1,n-1);
    arr[l+1]+=arr[l];
    return ans;
}
vector <ll> precompute(vector <ll> arr,ll n)
{
    vector <ll> ans(n);
    ans[0] = arr[0];
    for(ll i = 1;i<n;i++)
    {
        ans[i] = arr[i]-ans[i-1];
    }
    ll i=0;
    for(i =0;i<n;i++)
    {
        if(ans[i]<0)
        {
            ans[i]=-1;
            break;
        }
    }
    while(i<n)
    {
        ans[i++]=-1;
    }
    return ans;
}
void solve()
{
    ll k;cin>>k;
    ll arr[k+10];
    memset(arr,0,sizeof arr);
    for(ll i = 1;i<=k;i++)
    {
        for(ll j = i;j<=k;j+=i)
        {
            arr[j]++;
            // arr[]
        }
    }
    ll count = 0;
    for(ll i = 1;i<=k;i++)
    {
        count+= arr[i]*(k/i);
    }
    cout<<count<<endl;
    return;
}
int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    int t =1;
    // cin>>t;
    while(t--)
    {
        
        solve();
    }
    return 0;
}
#include <bits/stdc++.h>

using namespace std;

#define FOR(i,a,b)  for(int i=(int)(a);i<(int)(b);i++)
#define REP(i,n)    FOR(i,0,n)
#define ALL(a)      a.begin(),a.end()
#define vi          vector<int>
#define vvi         vector<vi>
#define P           pair<int,int>
#define vP          vector<P>
#define vvP         vector<vP>

using ll = long long int;

int main(){
    int K;cin>>K;
    ll res=0;
    FOR(i,1,K+1){
        FOR(j,1,K+1){
            if(i*j>K)break;
            res += K/i/j;
        }
    }
    cout<<res<<endl;
    return 0;
}
