| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 493274 | rainboy | Autobahn (COI21_autobahn) | C11 | 5 ms | 416 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <stdio.h>
#define N 1000
#define X 2000
int min(int a, int b) { return a < b ? a : b; }
int max(int a, int b) { return a > b ? a : b; }
int main() {
static int ll[N], rr[N], cc[N], dd[X];
int n, k, len, i, x, ans, sum;
scanf("%d%d%d", &n, &k, &len);
for (i = 0; i < n; i++) {
scanf("%d%d%d", &ll[i], &cc[i], &rr[i]);
dd[ll[i]]++, dd[rr[i] + 1]--;
}
for (x = 1; x < X; x++)
dd[x] += dd[x - 1];
for (x = 1; x < X; x++)
dd[x] = dd[x] >= k;
for (x = 1; x < X; x++)
dd[x] += dd[x - 1];
ans = 0;
for (x = 1; x + len - 1 < X; x++) {
sum = 0;
for (i = 0; i < n; i++) {
int l = max(ll[i] + cc[i], x), r = min(rr[i], x + len - 1);
if (l <= r)
sum += dd[r] - dd[l - 1];
}
ans = max(ans, sum);
}
printf("%d\n", ans);
return 0;
}Compilation message (stderr)
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
