未完成 BZOJ 1531
2016-12-11 21:48
351 查看
#include <bits/stdc++.h> #define N 50000 int read() { int k=1,x=0; char ch; ch=getchar(); while(ch<'0' || ch>'9') { if(ch=='-') k=-1; ch=getchar(); } while(ch>='0' && ch<='9') { x=x*10+ch-'0'; ch=getchar(); } return x*k; } struct NOTE { int w,n; }p ; int f ,Q ,w ; int n,m; int main() { n=read(); for(int i=1;i<=n;i++) p[i].w=read(); for(int i=1;i<=n;i++) p[i].n=read(); m=read(); memset(f,127,sizeof(f)); f[0]=0; for(int i=1;i<=n;i++) { for(int j=0;j<p[i].w;j++) { int head=0,tail=0; for(int k=j;k<=m;k+=p[i].w) { while(head<=tail && w[head]<k-p[i].w*p[i].n) head++; while(head<=tail && f[k]-(k-w[head])/p[i].w<=Q[tail]) tail--; Q[++tail]=f[k]; w[tail]=k; f[k]=std::min(f[k],Q[head]+(k-w[head])/p[i].w); } } } printf("%d\n",f[m]); }
相关文章推荐
- JQuery 操作(二)
- Bzoj2154 Crash的数字表格 乘法逆元+莫比乌斯反演(TLE)
- Android最主流的4种实现Tab的方法
- 初识-IIS(互联网信息服务)
- 20145225 《信息安全系统设计基础》第13周学习总结
- 将RichTextBox的内容直接写入数据库:
- 【转】有限状态机问题编程实践
- 教你在 Linux 上使用 Calibre 创建电子书
- CSS编写静态网易注册界面
- 学习小记-Git基础
- 适配器模式 : 农村小伙娶乌克兰美女语言不通 翻译软件立功
- 关于android studio导入工程的正确姿势
- Swift3.0学习笔记-第一个app
- [JS Compose] 0. Understand 'Box' or 'Container', they are just like Array!
- LeetCode 145. Binary Tree Postorder Traversal
- imagemagic 半透明蒙层
- SETI--高斯消元
- Codeforces 625B【KMP】
- sparkstreaming输入测试(网络端口数据)
- 最大k乘积