Pagini recente » Cod sursa (job #2895016) | Cod sursa (job #1879478) | Cod sursa (job #426572) | Cod sursa (job #2176199) | Cod sursa (job #2240267)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("progresie.in");
ofstream fout("progresie.out");
int alg(long long n,long long r,long long a)
{
long long sf=(a-1)*a+1;
long long st=a-1,x,b;
for(int i=1;i<=n-1;i++)
{
x=sf+r*i;
a=sqrt(x-1)+1;
b=a*(a-1)+1;
if(b>x+st) return 0;
if(b>x)
{
st-=(b-x);
sf+=(b-x);
}
else if(b+a-1<x+st)
{
st=b+a-1-x;
}
}
return sf;
}
int main()
{
int T,n,r,a;
fin >> T;
long long x;
while(T--!=0)
{
fin >> n >> r;
a=1;
x=alg(n,r,a);
while(x==0)
{
a++;
x=alg(n,r,a);
}
fout << x << '\n';
}
return 0;
}