提交时间:2024-03-02 08:31:22

运行 ID: 133606

#include <bits/stdc++.h> using namespace std; int a,b[110],f[110]; int dfs(int n){ if(f[n]!=-1) return f[n]; return f[n]=max(dfs(n-1)+b[n],b[n]) } int main(){ cin>>a; for(int i=1;i<=a;i++){ cin>>b[i]; } dfs(a); int maxa; for(int i=1;i<=a;i++){ maxa=max(maxa,f[i]); } cout<<maxa; }