hihocoder1044

来源:互联网 发布:傲剑双龙斩升级数据 编辑:程序博客网 时间:2024/06/07 06:04
#include<cstdio>#include<algorithm>#include<cstring>using namespace std;int W[1001],F[1<<10][1002],N,M,Q,ans;int main() {scanf("%d%d%d",&N,&M,&Q);for(int i=1; i<=N; i++)scanf("%d",&W[i]);for(int i=1; i<=N; i++)for(int S=0; S<1<<M; S++) {int mov=(S&~(1<<M-1))<<1,l=mov,count=0;while(l)count++,l-=l&-l;F[mov][i+1]=max(F[mov][i+1],F[S][i]);if(count<Q)F[mov|1][i+1]=max(F[mov|1][i+1],F[S][i]+W[i]);}for(int S=0; S<1<<M; S++)ans=max(ans,F[S][N+1]);printf("%d",ans);return 0;}

0 0
原创粉丝点击