public class cie {
public static void main(String[] args) {
int d = cielib.podajD();
int k = cielib.podajK();
int r = cielib.podajR();
int ileZapytan = 0;
int wymiary[][] = new int[d][2];
int pozycje[] = new int[d];
for(int i = 0; i < d; i++){
wymiary[i][0] = 0;
wymiary[i][1] = r;
}
boolean czySprawdzac = true;
for(int i = 0; i < d; i++){
pozycje[i] = (wymiary[i][0] + wymiary[i][1])/2;
}
if((wymiary[0][0] + 2 ) >= wymiary[0][1]){
czySprawdzac = false;
}
while (czySprawdzac){
int srodek = r/2 + 1;
int shift = (wymiary[0][0] - wymiary[0][1]) % 2;
for(int i = 0; i < d; i++){
pozycje[i] = wymiary[i][0];
int czyLepiej = cielib.czyCieplo(pozycje);
pozycje[i] = wymiary[i][1];
czyLepiej = cielib.czyCieplo(pozycje);
if(czyLepiej == 1){
wymiary[i][0] = (wymiary[i][1] - wymiary[i][0])/2;
}
else{
int nowy = (wymiary[i][1] - wymiary[i][0])/2;
wymiary[i][1] = nowy + shift;
}
pozycje[i] = (wymiary[i][0] + wymiary[i][1])/2;
}
if((wymiary[0][0] + 2 ) >= wymiary[0][1]){
czySprawdzac = false;
}
}
for(int i = 0; i<d; i++)
{
pozycje[i] = wymiary[i][0];
int czyLepiej = cielib.czyCieplo(pozycje);
pozycje[i] = wymiary[i][1];
czyLepiej = cielib.czyCieplo(pozycje);
if(czyLepiej == 0)
{
pozycje[i] = wymiary[i][0];
czyLepiej = cielib.czyCieplo(pozycje);
if(czyLepiej == 0)
{
pozycje[i] = (wymiary[i][1] - wymiary[i][0]) / 2;
}
}
}
cielib.znalazlem(pozycje);
}
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | public class cie { public static void main(String[] args) { int d = cielib.podajD(); int k = cielib.podajK(); int r = cielib.podajR(); int ileZapytan = 0; int wymiary[][] = new int[d][2]; int pozycje[] = new int[d]; for(int i = 0; i < d; i++){ wymiary[i][0] = 0; wymiary[i][1] = r; } boolean czySprawdzac = true; for(int i = 0; i < d; i++){ pozycje[i] = (wymiary[i][0] + wymiary[i][1])/2; } if((wymiary[0][0] + 2 ) >= wymiary[0][1]){ czySprawdzac = false; } while (czySprawdzac){ int srodek = r/2 + 1; int shift = (wymiary[0][0] - wymiary[0][1]) % 2; for(int i = 0; i < d; i++){ pozycje[i] = wymiary[i][0]; int czyLepiej = cielib.czyCieplo(pozycje); pozycje[i] = wymiary[i][1]; czyLepiej = cielib.czyCieplo(pozycje); if(czyLepiej == 1){ wymiary[i][0] = (wymiary[i][1] - wymiary[i][0])/2; } else{ int nowy = (wymiary[i][1] - wymiary[i][0])/2; wymiary[i][1] = nowy + shift; } pozycje[i] = (wymiary[i][0] + wymiary[i][1])/2; } if((wymiary[0][0] + 2 ) >= wymiary[0][1]){ czySprawdzac = false; } } for(int i = 0; i<d; i++) { pozycje[i] = wymiary[i][0]; int czyLepiej = cielib.czyCieplo(pozycje); pozycje[i] = wymiary[i][1]; czyLepiej = cielib.czyCieplo(pozycje); if(czyLepiej == 0) { pozycje[i] = wymiary[i][0]; czyLepiej = cielib.czyCieplo(pozycje); if(czyLepiej == 0) { pozycje[i] = (wymiary[i][1] - wymiary[i][0]) / 2; } } } cielib.znalazlem(pozycje); } } |
English