1902 | 2022-12-08 13:30:11 | peter | Rendőrségi Üldözés 4 | cpp17 | Elfogadva 100/100 | 606ms | 238644 KiB |
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int varakozas(int ido, int periodus)
{
int ret = 2 * periodus - (ido % (2 * periodus)) <= periodus ? 2 * periodus - (ido % (2 * periodus)) : 0;
return ret;
}
int main()
{
int n, r, t, l;
scanf("%d %d %d %d", &n, &r, &t, &l);
int* x = (int*)malloc(sizeof(int) * (n + 1));
x[0] = 0;
for (int i = 1; i < n + 1; i++)
{
scanf("%d", &x[i]);
}
int** sols = (int**)malloc(sizeof(int*) * (r + 1));
for (int i = 0; i < r + 1; i++)
{
sols[i] = (int*)malloc(sizeof(int) * (n + 1));
sols[i][0] = 0;
}
for (int i = 1; i < n + 1; i++)
{
sols[0][i] = sols[0][i - 1] + x[i] - x[i - 1] + varakozas(sols[0][i - 1] + x[i] - x[i - 1], t);
}
for (int i = 1; i < r + 1; i++)
{
for (int j = 1; j < n + 1; j++)
{
int var = sols[i][j - 1] + x[j] - x[j - 1] + varakozas(sols[i][j - 1] + x[j] - x[j - 1], t);
int atmegy = sols[i - 1][j - 1] + x[j] - x[j - 1];
sols[i][j] = var < atmegy ? var : atmegy;
}
}
printf("%d", sols[r][n] + l - x[n]);
free(x);
for (int i = 0; i < r + 1; i++)
{
free(sols[i]);
}
free(sols);
return 0;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
subtask1 | 0/0 | ||||||
1 | Elfogadva | 3ms | 1236 KiB | ||||
2 | Elfogadva | 2ms | 1560 KiB | ||||
subtask2 | 10/10 | ||||||
3 | Elfogadva | 2ms | 1604 KiB | ||||
4 | Elfogadva | 2ms | 1808 KiB | ||||
5 | Elfogadva | 2ms | 2056 KiB | ||||
6 | Elfogadva | 2ms | 2308 KiB | ||||
7 | Elfogadva | 2ms | 2472 KiB | ||||
subtask3 | 15/15 | ||||||
8 | Elfogadva | 2ms | 2332 KiB | ||||
9 | Elfogadva | 2ms | 2400 KiB | ||||
10 | Elfogadva | 2ms | 2372 KiB | ||||
11 | Elfogadva | 2ms | 2556 KiB | ||||
subtask4 | 15/15 | ||||||
12 | Elfogadva | 2ms | 2852 KiB | ||||
13 | Elfogadva | 2ms | 2792 KiB | ||||
14 | Elfogadva | 2ms | 2612 KiB | ||||
15 | Elfogadva | 2ms | 2768 KiB | ||||
subtask5 | 25/25 | ||||||
16 | Elfogadva | 2ms | 2884 KiB | ||||
17 | Elfogadva | 2ms | 2816 KiB | ||||
18 | Elfogadva | 2ms | 3172 KiB | ||||
19 | Elfogadva | 2ms | 3120 KiB | ||||
20 | Elfogadva | 2ms | 3308 KiB | ||||
subtask6 | 15/15 | ||||||
21 | Elfogadva | 2ms | 2916 KiB | ||||
22 | Elfogadva | 2ms | 3312 KiB | ||||
23 | Elfogadva | 2ms | 3408 KiB | ||||
24 | Elfogadva | 2ms | 3500 KiB | ||||
25 | Elfogadva | 3ms | 3788 KiB | ||||
subtask7 | 20/20 | ||||||
26 | Elfogadva | 9ms | 6076 KiB | ||||
27 | Elfogadva | 24ms | 11564 KiB | ||||
28 | Elfogadva | 64ms | 27296 KiB | ||||
29 | Elfogadva | 210ms | 82132 KiB | ||||
30 | Elfogadva | 606ms | 238644 KiB |