Nu aveti permisiuni pentru a descarca fisierul grader_test9.in
Cod sursa(job #1066916)
Utilizator | Data | 25 decembrie 2013 20:02:42 | |
---|---|---|---|
Problema | Progresie | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva ICPC | Marime | 0.59 kb |
#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=1;!k;i++)
for(x = i*(i-1) + 1 ; !k && x <= i*i; x++){
k = 1;
long long xx = x;
for(int j = 0;j<n;j++){
xx += r;
if(!ok(xx)){
k = 0;
break;
}
}
}
printf("%lld\n", x - 1);
}
return 0;
}