Submission #380318

#TimeUsernameProblemLanguageResultExecution timeMemory
380318rainboyLand of the Rainbow Gold (APIO17_rainbow)C11
Compilation error
0 ms0 KiB
#include "koala.h" #include <stdio.h> #include <string.h> #define N 100 int minValue(int n, int w) { static int bb[N], rr[N]; int i; memset(bb, 0, n * sizeof *bb), bb[0] = 1; playRound(bb, rr); for (i = 1; i < n; i++) if (rr[i] == 0) return i; return 0; } int aa[] = { 2, 4, 11 }; char used[N]; int maxValue(int n, int w) { static int bb[N], rr[N]; int i, r; for (i = 0; i < N; i++) bb[i] = 1; playRound(bb, rr); for (r = 0; r < 3; r++) { for (i = 0; i < N; i++) if (bb[i] && rr[i] > bb[i]) bb[i] = aa[r]; else bb[i] = 0; playRound(bb, rr); } for (i = 0; i < N; i++) if (bb[i] && rr[i] > bb[i]) return i; return -1; } int greaterValue(int n, int w) { /* static int bb[N], rr[N]; int i_ = maxValue(n, w), i; if (i_ < 2) return i_; for (i = 0; i < n; i++) bb[i] = 1; bb[i_] = bb[0] = bb[1] = 0; playRound(bb, rr); return rr[0] > bb[0]; */ return n + w; } int n_; int compare(int i, int j) { static int bb[N], rr[N]; memset(bb, 0, n_ * sizeof *bb); bb[i] = bb[j] = n_; playRound(bb, rr); return rr[i] > bb[i] ? 1 : -1; } void sort(int *ii, int l, int r) { static int jj[N]; int m, i, j, k; if (r - l == 1) return; m = (l + r) / 2; sort(ii, l, m), sort(ii, m, r); i = l, j = m, k = l; while (i < m && j < r) jj[k++] = compare(ii[i], ii[j]) < 0 ? ii[i++] : ii[j++]; while (i < m) jj[k++] = ii[i++]; while (j < r) jj[k++] = ii[j++]; memcpy(ii + l, jj + l, (r - l) * sizeof *jj); } int lrb[][3] = { { 0, 100, 1 }, { 0, 50, 1 }, { 0, 50, 2 }, { 50, 100, 1 }, { 50, 100, 2 }, { 0, 25, 1 }, { 0, 25, 2 }, { 0, 25, 3 }, { 0, 25, 4 }, { 25, 34, 2 }, { 25, 34, 3 }, { 25, 34, 4 }, { 25, 34, 5 }, { 25, 34, 8 }, { 34, 50, 2 }, { 34, 50, 3 }, { 34, 50, 4 }, { 34, 50, 5 }, { 34, 50, 6 }, { 50, 60, 2 }, { 50, 60, 3 }, { 50, 60, 4 }, { 50, 60, 5 }, { 50, 60, 7 }, { 50, 60, 10 }, { 60, 75, 2 }, { 60, 75, 3 }, { 60, 75, 4 }, { 60, 75, 5 }, { 75, 100, 2 }, { 75, 100, 3 }, { 75, 100, 4 }, { 0, 13, 1 }, { 0, 13, 2 }, { 0, 13, 3 }, { 0, 13, 4 }, { 0, 13, 6 }, { 13, 17, 2 }, { 13, 17, 3 }, { 13, 17, 4 }, { 17, 19, 3 }, { 20, 25, 2 }, { 20, 25, 3 }, { 20, 25, 4 }, { 20, 25, 5 }, { 25, 28, 3 }, { 25, 28, 5 }, { 28, 30, 4 }, { 34, 40, 3 }, { 34, 40, 4 }, { 34, 40, 5 }, { 34, 40, 7 }, { 40, 43, 4 }, { 40, 43, 6 }, { 43, 45, 5 }, { 47, 50, 4 }, { 47, 50, 6 }, { 51, 54, 5 }, { 51, 54, 6 }, { 54, 56, 6 }, { 60, 63, 5 }, { 60, 63, 7 }, { 63, 67, 4 }, { 63, 67, 5 }, { 63, 67, 7 }, { 67, 69, 7 }, { 69, 71, 7 }, { 71, 75, 5 }, { 71, 75, 6 }, { 71, 75, 8 }, { 75, 83, 3 }, { 75, 83, 4 }, { 75, 83, 5 }, { 75, 83, 7 }, { 75, 83, 10 }, { 83, 88, 4 }, { 83, 88, 5 }, { 83, 88, 6 }, { 83, 88, 9 }, { 88, 91, 6 }, { 88, 91, 8 }, { 91, 100, 3 }, { 91, 100, 4 }, { 91, 100, 5 }, { 91, 100, 6 }, { 91, 100, 8 }, { 91, 100, 11 }, { 0, 7, 1 }, { 0, 7, 2 }, { 0, 7, 3 }, { 7, 9, 2 }, { 34, 36, 5 }, { 76, 78, 7 }, { 78, 80, 7 }, { 92, 95, 6 }, { 92, 95, 8 }, { 0, 4, 1 }, { 0, 4, 2 }, { 0, 2, 1 }, }; /* done by hand */ void allValues(int n, int w, int *pp) { static int ii[N]; int i; for (i = 0; i < n; i++) ii[i] = i; if (w == n * 2) /* mergesort */ n_ = n, sort(ii, 0, n); else { /* quicksort */ static int bb[N], rr[N]; int h; for (h = 0; h < 99; h++) { int l = lrb[h][0], r = lrb[h][1], b = lrb[h][2], tmp; memset(bb, 0, n * sizeof *bb); for (i = l; i < r; i++) bb[ii[i]] = b; playRound(bb, rr); while (l < r) if (rr[ii[l]] <= bb[ii[l]]) l++; else { r--; tmp = ii[l], ii[l] = ii[r], ii[r] = tmp; } } } for (i = 0; i < n; i++) pp[ii[i]] = i + 1; }

Compilation message (stderr)

rainbow.c:1:10: fatal error: koala.h: No such file or directory
    1 | #include "koala.h"
      |          ^~~~~~~~~
compilation terminated.