Pagini recente » Cod sursa (job #2278438) | Cod sursa (job #202404) | Cod sursa (job #1263804) | Cod sursa (job #93921) | Cod sursa (job #2240259)
#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,precalc;
for(int u=1;u<=T;u++)
{
fin >> n >> r;
i=0;
while(1)
{
i++;
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;
precalc=a*a;
b=precalc-a+1;
if(sf<b)
{
if(sf+st<b)
{
ok=0;
break;
}
st-=(b-sf);
sf=b;
}
if(precalc-sf<st)
st=precalc-sf;
}
if(ok==1)
{
fout << sf-1LL*(n-1)*r << '\n';
break;
}
}
}
return 0;
}