一种简单的思维
一看到根号就马上想到平方。然后这题就出来了。
把左右平方。
即
也就是
已知都为正整数
所以为正整数
那么为正整数
所以,
是一个正整数,也就是
为一个平方数,
是他的因数
我们知道所以
然后暴力枚举就行了
有一点需要十分十分十分注意,本蒟蒻被弄了好几次
这个重复,交换也算的,所以就是纯碎的因数个数
贴上蒟蒻代码:
#include<bits/stdc++.h>
using namespace std;
int n,ans;
int main(){
scanf("%d",&n);
for(int i=1;i<=sqrt(n);++i){
int k=i*i;
for(int j=1;j<=sqrt(k);++j){
if(j==i) ans+=1;
else if(k%j==0) ans+=2;
}
}
printf("%d",ans);
}
京公网安备 11010502036488号