ssoj1011: KC的瓷器
来源:互联网 发布:淘宝网腿祙裤 编辑:程序博客网 时间:2024/04/27 18:45
题意:给定n排,每排si个瓷器,每个瓷器有一个价值,每次只能从两边取,问取m个的最大价值。
思路:枚举每行取j(0~si)个瓷器最大价值,再在总结果上修改。
#include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>#include <cmath>#include <algorithm>using namespace std;const int maxn=10004;int n,m,mx[maxn],sum[maxn],a[maxn],f[maxn],tot;inline int get(){ char c;while(!isdigit(c=getchar())); int v=c-48;while(isdigit(c=getchar()))v=v*10+c-48; return v;}int main(){ n=get(),m=get();tot=0; memset(mx,0,sizeof(mx)); for(int i=1;i<=n;++i){ int s=get();tot+=s;memset(sum,0,sizeof(sum)); memset(f,0,sizeof(f)); for(int j=1;j<=s;++j)a[j]=get(),sum[j]=sum[j-1]+a[j]; for(int j=1;j<=s;++j){ for(int k=0;k<=j;++k)f[j]=max(f[j],sum[k]+sum[s]-sum[s-j+k]);} int t=min(tot,m); for(int j=t;j>=1;--j){ //注意要从大到小int p=min(s,j); for(int k=p;k>=1;--k)mx[j]=max(mx[j],mx[j-k]+f[k]);}}printf("%d\n",mx[m]);return 0;}
0 0
- ssoj1011: KC的瓷器
- {题解}[jzoj3413]【NOIP2013模拟】KC的瓷器
- 【NOIP2013模拟】KC的陶器
- kc回拨的一个python脚本
- China 并非源于“瓷器”,来看看它的真正由来!
- 汝窑瓷器的拍卖保纳艺术及走势
- 瓷器工艺
- KC伺服舵机四个方向的打包程序
- 注册KC
- 74Kc mini_boot
- solr6.5配置solr自带的solr-6.5.0\contrib\analysis-extras\lucene-libs中文分瓷器
- 怎么鉴定龙泉窑瓷器
- 弄了些KC号子
- 【NOIP2013模拟】KC看星
- 韩国KC Mark认证介绍
- 没有绣花针,不揽瓷器活
- 看看QR如何打造KC AMA
- KC.Softwares.ApHeMo.v1.1.0.3
- PHP语音SDK接口开发经验及具体开发实现
- httpClient上传图片文件的功能
- iOS开发之保存照片到自己创建的相簿
- 重写TimePickerDialog以解决多次添加的问题
- jquery鼠标hover事件文字内容滑动遮罩效果
- ssoj1011: KC的瓷器
- java代码获知该方法被哪个类、哪个方法、在哪一行调用
- 用java来写一个猜数字游戏,要用到界面
- 【文件系统】FAT12文件系统简介
- zz 修改2
- 单播/组播/广播 通讯协议的特点及应用对比
- 学习笔记随录1——关于LayoutInflater.inflate()的三个参数
- 欢迎使用CSDN-markdown编辑器
- Django开发之south详解