题目链接:[蓝桥杯 2021 省 AB2] 完全平方数 - 洛谷
标签:质因数分解
思路:从1~n遍历n的因子,如果该质因子的幂为奇数,则因再乘以此质因数,才可以使n变为完全平方数。
代码:
#include<iostream>
using namespace std;
typedef long long ll;
ll n;
ll ans=1;
int main()
{
cin>>n;
for(ll i=2;i*i<=n;++i)
{
int res=0;
while(n%i==0)
{
res++;
n/=i;
}
if(res%2) ans*=i;
}
ans*=n;
cout<<ans<<endl;
return 0;
}