码题集OJ-王国傀儡师 (matiji.net)
思想

code
#include<bits/stdc++.h>
#define int long long
using namespace std;
int n;
int ans;
const int mod=3333;
signed main()
{
cin.tie(nullptr)->sync_with_stdio(false);
cin>>n;
for(int i=1;i*i*i<=n;i++)
{
ans=(ans+1)%mod;
}
for(int i=1;i*i*i<n;i++)
{
for(int j=i+1;i*j*j<n;j++)
{
int k=n/i/j-j;
if(k>0)ans=(ans+6*k)%mod;
}
}
for(int i=1;i*i*i<n;i++)
{
int j=n/i/i-i;
if(j>0)ans=(ans+3*j)%mod;
}
for(int i=1;i*i*i<n;i++)
{
int j=sqrt(n/i)-i;
if(j>0)ans=(ans+3*j)%mod;
}
cout<<ans<<endl;
return 0;
}
