#include<bits/stdc++.h>
using namespace std;
long long n,dp[1005];
long long sum__(long long num){
if(num==1)return 0;
int ans=1;
for(int i=2;i*i<=num;i++){
if(num%i==0){
if(i*i!=num)ans+=(i+num/i);
else ans+=i;
while(num%i==0)num/=i;
}
}
return ans;
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
for(int j=n;j>=i;j--){
dp[j]=max(dp[j],dp[j-i]+sum__(i));
}
}
cout<<dp[n];
}
哪里出错了啊/kel