Cod sursa(job #2918441)
Utilizator | Enal Gemaledin Blaugranas | Data | 11 august 2022 15:29:21 |
---|---|---|---|
Problema | Progresie | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva ICPC | Marime | 0.84 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream in("progresie.in");
ofstream out("progresie.out");
typedef long long ll;
ll tst,n,r;
void solve()
{
for(ll k=1;; ++k)
{
for(ll i=k*(k-1)+1; i<=k*k;)
{
ll j;
for(j=1; j<n; ++j)
{
ll x=i+j*r;
ll rad=sqrt(x);
if(x==rad*rad)
continue;
++rad;
if((rad-1)*rad+1<=x and x<=rad*rad)
continue;
i+=(rad-1)*rad+1-x;
break;
}
if(j==n)
{
out<<i<<'\n';
return ;
}
}
}
}
int main()
{
in>>tst;
while(tst--)
{
in>>n>>r;
solve();
}
return 0;
}