Pagini recente » Cod sursa (job #2717614) | Cod sursa (job #2555259) | Cod sursa (job #2224650) | Cod sursa (job #708370) | Cod sursa (job #2240255)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("progresie.in");
ofstream fout("progresie.out");
int main()
{
int T,n,r;
long long i=1;
fin >> T;
bool ok=1;
long long a,b,sf,st;
for(int u=1;u<=T;u++)
{
fin >> n >> r;
i=1;
while(1)
{
sf=i*(i-1)+1;
st=i-1;
ok=1;
for(int j=1;j<=n-1;j++)
{
sf+=r;
a=sqrt(sf-1)+1;
b=a*(a-1)+1;
if(sf<b)
{
if(sf+st<b)
{
ok=0;
break;
}
st-=(b-sf);
sf=b;
}
if(a*a-sf<st)
st=a*a-sf;
}
if(ok==1)
{
fout << sf-1LL*(n-1)*r << '\n';
break;
}
i++;
}
}
return 0;
}