#include "cielib.h"
int main() {
int D = podajD();
int K = podajK();
int R = podajR();
int t[D],l[D],r[D];
for (int i = 0; i < D; i++) {
l[i]=0;
r[i]=R;
}
while (true) {
int j=0;
for (int i=0; i < D; i++) {
if (r[i]-l[i]>r[j]-l[j]) j=i;
t[i]=(l[i]+r[i])/2;
}
if (l[j]==r[j]) break;
int cur=t[j];
t[j]=l[j];
int x=czyCieplo(t);
t[j]=r[j];
int y=czyCieplo(t);
if (y==0) {
t[j]=l[j];
x=czyCieplo(t);
if (x==0) l[j]=r[j]=cur; else r[j]=cur;
} else l[j]=cur+1;
}
znalazlem(r);
return 0;
}
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 | #include "cielib.h" int main() { int D = podajD(); int K = podajK(); int R = podajR(); int t[D],l[D],r[D]; for (int i = 0; i < D; i++) { l[i]=0; r[i]=R; } while (true) { int j=0; for (int i=0; i < D; i++) { if (r[i]-l[i]>r[j]-l[j]) j=i; t[i]=(l[i]+r[i])/2; } if (l[j]==r[j]) break; int cur=t[j]; t[j]=l[j]; int x=czyCieplo(t); t[j]=r[j]; int y=czyCieplo(t); if (y==0) { t[j]=l[j]; x=czyCieplo(t); if (x==0) l[j]=r[j]=cur; else r[j]=cur; } else l[j]=cur+1; } znalazlem(r); return 0; } |
English