why
查看原帖
why
923362
AAAuc03楼主2025/1/1 20:46
#include <bits/stdc++.h>
using namespace std;
int n,a[2100],v[2100][2100];
int dfs(int day,int l,int r)
{
	if(v[l][r])
	{
		return v[l][r];
	}
    if(l>r)
    {
        return 0;
    }
    return v[l][r]=max(dfs(day+1,l+1,r)+a[l]*day,dfs(day+1,l,r-1)+a[r]*day);
    return v[l][r];
}
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);cout.tie(0);
    cin>>n;
    for(int i=1;i<=n;i++)cin>>a[i];
    cout<<dfs(1,1,n);
    return 0;
}

这份代码是A的

#include <bits/stdc++.h>
using namespace std;
int n,a[2100],v[2100][2100];
int dfs(int day,int l,int r)
{
	if(v[l][r])
	{
		return v[l][r];
	}
    if(l>r)
    {
        return 0;
    }
    return v[l][r]=max(dfs(day+1,l+1,r)+a[l]*day,dfs(day+1,l,r-1)+a[r]*day);
    //return v[l][r];
}
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);cout.tie(0);
    cin>>n;
    for(int i=1;i<=n;i++)cin>>a[i];
    cout<<dfs(1,1,n);
    return 0;
}

这也是A的

2025/1/1 20:46
加载中...