解题思路:
注意事项:
参考代码:
#include<iostream> #include<algorithm> #include<cstring> using namespace std; const int M=205; int a[M][M]; int b[M]; int main() { int n,sum=0; cin>>n; memset(a,0,sizeof(a)); for(int i=1;i<=n;i++) { cin>>b[i]; b[i+n]=b[i]; } for(int i=2;i<=n;i++) { for(int j=1;j+i-1<2*n;j++) { int t=j+i-1; for(int k=j;k<t;k++) { a[j][t]=max(a[j][t],a[j][k]+a[k+1][t]+b[j]*b[k+1]*b[t+1]); } } } for(int i=1;i<=n;i++) { if(sum<a[i][i+n-1]) sum=a[i][i+n-1]; } cout<<sum<<endl; return 0; }
0.0分
2 人评分
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:619 |
The 3n + 1 problem (C语言代码)浏览:1340 |
C语言训练-尼科彻斯定理 (C语言代码)。。。内含证明定理浏览:2071 |
C二级辅导-计负均正 (C语言代码)浏览:593 |
C语言程序设计教程(第三版)课后习题10.7 (C语言代码)浏览:528 |
printf基础练习2 (C语言代码)浏览:943 |
简单的a+b (C语言代码)浏览:600 |
wu-淘淘的名单 (C++代码)浏览:1339 |
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:586 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:863 |