Pagini recente » Cod sursa (job #42438) | Cod sursa (job #497935) | Cod sursa (job #1810545) | Cod sursa (job #2187454) | Cod sursa (job #1057278)
#include <cstdio>
#include <cmath>
int N, R, T;
long long delay;
bool verifica(long long v) {
for (int i=0; i<N; ++i) {
long long T = v + R * i;
long long R = sqrt(T);
long long RR = R*R;
if (RR+1 <= T && T <= RR+R) {
delay = RR+R+1 - T;
return false;
}
}
return true;
}
int main() {
freopen("progresie.in", "r", stdin);
freopen("progresie.out", "w", stdout);
scanf("%d", &T);
while (T--) {
scanf("%d %d", &N, &R);
long long i = 1;
long long p = 1;
while (true) {
if (verifica(i)) {
printf("%lld\n", i);
break;
} else i+=delay;
// ++i;
/*
p = sqrt(i);
long long pp = p*p;
if (i >= pp+1 && i<=pp+p) {
i = pp+ p + 1;
}*/
}
}
return 0;
}