#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; } |