Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- int n, len, f[102][102], a[102];
- int cut(int l, int r) {
- if (l+1 == r) return 0;
- if (f[l][r] != -1) return(f[l][r]);
- int res = 1003;
- for (int i=l+1; i<r; ++i)
- res = min(res, cut(l, i) + cut(i, r) + a[r] - a[l]);
- f[l][r] = res;
- return(res);
- }
- int main() {
- freopen("CatThep.inp", "r", stdin);
- scanf("%d%d", &len, &n);
- for (int i=1; i<=n; ++i) scanf("%d", &a[i]);
- a[0] = 0; a[n+1] = len;
- memset(f, -1, sizeof(f));
- printf("%d", cut(0, n+1));
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment