网址:http://47.104.93.98/contest/64/problem/DB0105
60分,后两个点TLE,求助
code:
#include <bits/stdc++.h>
using namespace std;
long long calc(long long x)
{
long long sum=0;
for(long long i=1;i<=x;i++)
{
if(x%i==0) sum+=i;
}
return sum;
}
int main()
{
std::ios::sync_with_stdio(0);
long long a,b;
scanf("%lld%lld",&a,&b);
int ysa=0;
for(long long i=1;i<=round(sqrt(a));i++)
{
if(a%i==0) ysa++;
}
if(ysa==1)
{
long long l1=round(sqrt(a));
long long l2=calc(b);
long long l3=l1*l1;
printf("%lld",l2*l3);
}
else
{
long long l4=round(sqrt(b));
long long l5=calc(a);
long long l6=l4*l4;
printf("%lld",l5*l6);
}
return 0;
}