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)
autobahn.c: In function 'main':
autobahn.c:13:2: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
13 | scanf("%d%d%d", &n, &k, &len);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
autobahn.c:15:3: warning: ignoring return value of 'scanf' declared with attribute 'warn_unused_result' [-Wunused-result]
15 | scanf("%d%d%d", &ll[i], &cc[i], &rr[i]);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |