社区讨论

样例过不了,求助

P1005[NOIP 2007 提高组] 矩阵取数游戏参与者 3已保存回复 2

讨论操作

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

当前回复
2 条
当前快照
1 份
快照标识符
@locis67s
此快照首次捕获于
2023/10/30 14:29
2 年前
此快照最后确认于
2023/11/05 01:49
2 年前
查看原帖
CPP
#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll n,m,num[82][82],f[82][82][82],ans=0;
ll pw(int zhishu)
{
	ll mi=2;
	while(zhishu)
	{
		mi*=2;
		zhishu--;
	}
}
int main()
{
	cin>>n>>m;
	for(ll i=1;i<=n;i++)
		for(ll l=1;l<=m;l++)
			cin>>num[n][m];
	for(ll i=1;i<=n;i++)
	for(ll l=1;l<=m;l++)
	for(ll c=1;c<=l;c++)
	{
		ll aa=f[i][c][m-l+c]+num[i][c]*pw(l),bb=f[i][c+1][m-l+c+1]+num[i][m-l+c+1]*pw(l);
		f[i][c+1][m-l+c]=max(aa,bb);
	}
				
	for(ll i=1;i<=n;i++)
	{
		ll maxn=0;
		for(ll l=1;l<=m;l++)
		maxn=max(maxn,f[i][l][l-1]);
		/*这个地方f[i][l][l-1]的l-1代表最后一个取的l的最大值*/
		ans+=maxn; 
	}
	cout<<ans<<endl;
	return 0;
}

回复

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

正在加载回复...