Pagini recente » Diferente pentru preoni-2007/runda-3/solutii intre reviziile 28 si 53 | Cod sursa (job #822931) | Cod sursa (job #2912676) | Cod sursa (job #691876) | Cod sursa (job #1066924)
#include<cstdio>
#include<cmath>
bool ok(long long x){
long long sq = sqrt(x);
return x == sq*sq || x > sq*(sq+1);
}
int main(void){
freopen("progresie.in", "r", stdin);
#ifdef INFOARENA
freopen("progresie.out", "w", stdout);
#endif
int t;
scanf("%d", &t);
while(t--){
int n, r;
bool k = 0;
long long x;
scanf("%d%d", &n, &r);
n--;
for(long long i=700916;!k;i++){
x = i*(i-1) + 1;
k = 1;
for(int j = 0;j<n;j++){
x += r;
if(!ok(x)){
k = 0;
break;
}
}
}
printf("%lld\n", x - 1LL * r*n);
}
return 0;
}