社区讨论
人类智慧过了
P4072[SDOI2016] 征途参与者 5已保存回复 7
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 7 条
- 当前快照
- 1 份
- 快照标识符
- @mlgxt55n
- 此快照首次捕获于
- 2026/02/11 02:31 上周
- 此快照最后确认于
- 2026/02/11 02:31 上周
。
CPP#include<bits/stdc++.h>
using namespace std;
#define int long long
int n,m,a[3005],f[3005][3005];
signed main(){
ios::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
cin>>n>>m;
int sum=0;
for(int i=1;i<=n;i++){
cin>>a[i];
a[i]+=a[i-1];
}
memset(f,0x3f,sizeof(f));
f[0][0]=0;
for(int i=1;i<=n;i++){
int p=lower_bound(a+0,a+i,a[i]-a[n]/m)-a;
for(int k=1;k<=m;k++){
for(int j=max(1ll,p-2);j<=min(i,p+2);j++){
f[i][k]=min(f[i][k],f[j-1][k-1]+(a[i]-a[j-1])*(a[i]-a[j-1]));
}
}
}
cout<<-a[n]*a[n]+m*f[n][m];
return 0;
}
回复
共 7 条回复,欢迎继续交流。
正在加载回复...