一本通 1266:例9.10机器分配
Posted benjamin-cpp
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一本通 1266:例9.10机器分配相关的知识,希望对你有一定的参考价值。
机器分配
Code:
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
//Mystery_Sky
//
#define M 5000
int f[M][M];
int n, m, ans;
int c[M][M];
void print(int i, int j)
if(!i) return;
for(int k = 0; k <= j; k++)
if(ans == f[i-1][k] + c[i][j-k])
ans = f[i-1][k];
print(i-1, k);
printf("%d %d\n", i, j-k);
break;
int main()
scanf("%d%d", &n, &m);
for(int i = 1; i <= n; i++)
for(int j = 1; j <= m; j++) scanf("%d", &c[i][j]);
for(int i = 1; i <= n; i++)
for(int j = 1; j <= m; j++)
int maxx = 0;
for(int k = 0; k <= j; k++)
maxx = max(f[i-1][k] + c[i][j-k], maxx);
f[i][j] = maxx;
printf("%d\n", f[n][m]);
ans = f[n][m];
print(n, m);
return 0;
以上是关于一本通 1266:例9.10机器分配的主要内容,如果未能解决你的问题,请参考以下文章
「一本通 4.2 例 2」最敏捷的机器人(loj10120)