改了输出下表,反而对了为什么???
查看原帖
改了输出下表,反而对了为什么???
657784
quananan楼主2022/8/16 09:05
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
int f[12][12][12],a[12][12],n,x,y,z;
int main() {
   cin>>n>>x>>y>>z;
   while(x!=0||y!=0||z!=0) {
   	a[x][y]=z;
   	cin>>x>>y>>z;
   }
   for(int i=1; i<=n; i++) {
   	for(int j=1; j<=n; j++) {
   		for(int k=1; k<=n; k++) {
   			f[i][j][k]=max(max(f[i-1][j][k-1],f[i-1][j][k]),max(f[i][j-1][k-1],f[i][j-1][k]))+a[i][j]+a[k][i+j-k];
   			if(i==k&&(i+j-k)==j){
   				f[i][j][k]-=a[i][j];
   			}
   		}
   	}
   }
   cout<<f[n][n][n-1];
   return 0;
}
2022/8/16 09:05
加载中...