Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
158561 | 达达!黑化! | 合并石子1 | C++ | 通过 | 100 | 0 MS | 308 KB | 449 | 2024-07-24 08:17:25 |
#include<bits/stdc++.h> using namespace std; int n,a[110],f[110][110],b[110]; int main(){ ios::sync_with_stdio(false); cin.tie(nullptr); cin>>n; memset(f,0x3f,sizeof(f)); for(int i=1;i<=n;i++){ cin>>a[i]; a[i]=a[i-1]+a[i]; f[i][i]=0; } for(int k=2;k<=n;k++){ for(int l=1;l+k-1<=n;l++){ int r=l+k-1; for(int j=l;j<r;j++)f[l][r]=min(f[l][r],f[l][j]+f[j+1][r]+a[r]-a[l-1]); } } cout<<f[1][n]; return 0; }