#include #define MAX 1000042 int M, N, zrusene_diff[MAX]; FILE *fr, *fw; int main(void) { fr=fopen("mrkev.in", "r"); fw=fopen("mrkev.out","w"); fscanf(fr, "%d%d", &M, &N); int last=0, zrusene_celkem=0; for (int i=0; i= M) { zrusene_celkem += (length/M)-1; length %= M; int s = last % M; if (s+length >= M) { zrusene_diff[s]++; zrusene_diff[M]--; /* tohle je zbytečné */ zrusene_diff[0]++; zrusene_diff[s+length-M+1]--; } else { zrusene_diff[s]++; zrusene_diff[s+length+1]--; } } last = next; } fclose(fr); int zrusene = 0, best = (1U<<31)-1; for (int i=0; i