#include #include int binarni_vyhledani(int a, int b, int median, int *prefixy) { int stred = (b+a)/2; if (prefixy[a] >= median) return a; else { if (prefixy[stred] >= median) return binarni_vyhledani(a, stred, median, prefixy); else return binarni_vyhledani(stred+1, b, median, prefixy); } } int main(int argc, char **argv) { int n, d; int a, b; int i; int *hmotnosti, *prefixy; scanf("%d %d", &n, &d); hmotnosti = (int *) malloc((n+1)*sizeof(int)); prefixy = (int *) malloc((n+1)*sizeof(int)); for (i=1; i<=n; i++) { scanf("%d", &hmotnosti[i]); } prefixy[0] = 0; for (i=1; i<=n; i++) { prefixy[i] = prefixy[i-1] + hmotnosti[i]; } for (i=0; i