题解:
(3|12)3能被12整除
q^2|x: 因为 k^2*x为整数
[满足此条件]?1:0;
算到下面这一步后直接暴力枚举就可以了:
主要得出:即为答案
标程:
#include<bits/stdc++.h>
using namespace std;
int n,s;double e=(1+sqrt(5))/2;
int main(){
cin>>n;
//推导所得的求和公式计算
for(int q=1;q*q<=n;q++)
for(int p=q;p<=q*e;p++)
if(__gcd(p,q)==1)
s+=n/p/p;
cout<<s;
}