目录
一、问题描述
二、代码
#include <iostream>
#include <stdio.h>
using namespace std;
int MinRent(int n, int r[200][200]){
int i, j, p, q = 1;
int m = 0;
i = 0, j = i + q;
for(; i < n - 1; i++, j++){
m = r[i][j];
for(p = i + 1; p <= j; p++){
m = min(m, r[i][p] + r[p][j]);
}
r[i][j] = m;
if(j==n-1){
q++;
i = -1;
j = i + q;
}
}
return r[0][n-1];
}
int main()
{
int n, i, j;
scanf("%d",&n);
int r[200][200] = {0};
for(i = 0; i < n - 1; i++){
for(j = i + 1; j < n; j++)
scanf("%d",&r[i][j]);
}
printf("%d",MinRent(n, r));
return 0;
}