社区讨论

70求掉

P1006[NOIP 2008 提高组] 传纸条参与者 2已保存回复 1

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
1 条
当前快照
1 份
快照标识符
@mhjo79f5
此快照首次捕获于
2025/11/04 05:46
4 个月前
此快照最后确认于
2025/11/04 05:46
4 个月前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
int a[51][51],n,m,f[101][51][51];
int main(){
	cin>>m>>n;
	for (int i=1;i<=m;i++) for (int j=1;j<=n;j++) cin>>a[i][j];
	f[0][1][1]=a[1][1];
	for (int i=0;i<=n+m-2;i++){
		for (int x1=1;x1<=m;x1++){
			for (int x2=1;x2<=m;x2++){
				int y1=i+2-x1,y2=i+2-x2;
				f[i+1][x1][x2]=max({f[i][x1][x2],f[i][x1-1][x2],f[i][x1][x2-1],f[i][x1-1][x2-1]});
				f[i+1][x1][x2]+=a[x1][y1];
				if (!(x1==x2&&y1==y2)) f[i+1][x1][x2]+=a[x2][y2];
			}
		}
	}
	cout<<f[n+m-1][m][m];
	return 0;
}
WA on#2.8.10 QAQ

回复

1 条回复,欢迎继续交流。

正在加载回复...