#include #include #include using namespace std; using ll = long long; int main(void){ ll n; cin >> n; int nn=1e5+1; vector yakusu(nn+1, -1), prime; for(int i=2; i<=nn; i++){ if(yakusu[i]!=-1) continue; int copy=i; prime.push_back(i); while(copy<=nn){ if(yakusu[copy]==-1) yakusu[copy]=i; copy+=i; } } ll ans=0; for(auto p:prime){ if(p*p>n) break; ll now=p*p; while(now<=n) ans+=now, now*=p; } cout << ans << endl; return 0; }