[noi707]LP
(以下用$Sa=\sum_{j=1}^{i}xi\cdot ai$,Sb和Sc同理)
令f[i][x]表示前i个数,$Sa\le x\le Sb$时最小的Sc
考虑第i个数是否选择,可以得到递推式$f[i][x]=min(f[i-1][x],min(f[i-1][x-j])+ci)$(j满足$ai\le j\le bi$),这个东西用单调队列维护即可
(这个转移的正确性可以用充分和必要两方面来考虑,具体不证了)

1 #include<bits/stdc++.h>
2 using namespace std;
3 #define N 1005
4 #define oo 0x3f3f3f3f
5 int t,n,m,l,r,a[N],b[N],c[N],q[N*10],f[N][N*10];
6 int main(){
7 scanf("%d",&t);
8 while (t--){
9 scanf("%d%d",&n,&m);
10 for(int i=1;i<=n;i++)scanf("%d",&a[i]);
11 for(int i=1;i<=n;i++)scanf("%d",&b[i]);
12 for(int i=1;i<=n;i++)scanf("%d",&c[i]);
13 for(int i=1;i<=m;i++)f[0][i]=oo;
14 f[0][0]=0;
15 for(int i=1;i<=n;i++){
16 l=1;
17 r=0;
18 for(int j=0;j<=m;j++){
19 if (a[i]<=j){
20 while ((l<=r)&&(f[i-1][j]<=f[i-1][q[r]]))r--;
21 q[++r]=j-a[i];
22 }
23 while ((l<=r)&&(q[l]<j-b[i]))l++;
24 f[i][j]=f[i-1][j];
25 if (l<=r)f[i][j]=min(f[i][j],f[i-1][q[l]]+c[i]);
26 }
27 }
28 if (f[n][m]==oo)printf("IMPOSSIBLE!!!\n");
29 else printf("%d\n",f[n][m]);
30 }
31 }
[noi707]LP的更多相关文章
- 对偶理论、拉格朗日对偶问题、LP线性规划对偶性质
Lagrange 对偶问题 定义其的对偶问题: Lagrange函数 考虑线性规划问题 若取集合约束D={x|x≥0},则该线性规划问题的Lagrange函数为 线性规划的对偶问题为: 对偶定理原问题 ...
- [原创] 使用LP Wizard 10.5 制作 Allegro PCB封装
本文只讲述使用 Calculator 和 Wizard 功能制作封装,通常学会使用这种方法,通用的标准封装就都可以生成了.下面以一个简单的SOIC-8封装的芯片来说明软件使用方法. 第一步,查找相关d ...
- 压缩感知中的lp球:p范数最优化为什么总会导致一个稀疏的解的原因
转自:彬彬有礼. 压缩感知中的lp球:p范数最优化为什么总会导致一个稀疏的解的原因 http://blog.csdn.net/jbb0523/article/details/40268943 题目: ...
- 关于LP Wizard生成Allegro封装无焊盘的解决方案
最近在学Allegro,安装了软件后看网上说LP Wizard可以一键生成Allegro封装,就想去尝尝鲜.毕竟一直都是手动做封装,没怎么用过向导.但是按照网上教程用LP生成了一个封装,发现打开时没有 ...
- Linux基础命令---lp打印文件
lp lp指令用来打印文件,也可以修改存在的打印任务.使用该指令可以指定打印的页码.副本等. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.Fedora.openSUSE.SU ...
- Lp空间
在数学中,Lp空间是由p次可积函数组成的空间:对应的ℓp空间是由p次可和序列组成的空间.它们有时叫做勒贝格空间,以昂利·勒贝格命名(Dunford & Schwartz 1958,III.3) ...
- 什么是VC、PE、LP、GP?
天使基金主要关注原创项目构思和小型初创项目,投资规模大多在300万元以下:风险投资关注初创时期企业长期投资,规模在1000万元以下:私募股权投资主要关注3年内可以上市的成熟型企业. VC即ventur ...
- LP线性规划求解 之 单纯形 算法
LP线性规划求解 之 单纯形 算法 认识-单纯形 核心: 顶点旋转 随机找到一个初始的基本可行解 不断沿着可行域旋转(pivot) 重复2,直到结果不能改进为止 案例-过程 以上篇的case2的松弛型 ...
- LP线性规划初识
认识LP 线性规划(Linear Programming) 特指目标函数和约束条件皆为线性的最优化问题. 目标函数: 多个变量形成的函数 约束条件: 由多个等式/不等式形成的约束条件 线性规划: 在线 ...
随机推荐
- 2020.4.6--UCF Local Programming Contest 2017的正式赛
Problem A : Electric Bill 题目大意:进行电量分级制收费,1000kwh及以下一档收费,1000kwh以上按另一档收费,给出每个人的电量总额,问每人应支付多少钱. 思路:基础i ...
- Vulnhub实战-FALL靶机👻
Vulnhub实战-FULL靶机 下载地址:http://www.vulnhub.com/entry/digitalworldlocal-fall,726/ 1.描述 通过描述我们可以知道这个靶机枚举 ...
- MongoDB中如何优雅地删除大量数据
删除大量数据,无论是在哪种数据库中,都是一个普遍性的需求.除了正常的业务需求,我们需要通过这种方式来为数据库"瘦身". 为什么要"瘦身"呢? 表的数据量到达一定 ...
- k8s replicaset controller分析(2)-核心处理逻辑分析
replicaset controller分析 replicaset controller简介 replicaset controller是kube-controller-manager组件中众多控制 ...
- Zabbix 5.0:监控阿里云RDS
Blog:博客园 个人 由于近期压测,需要频繁登录阿里云查看RDS监控,每次登录查看监控步骤较为繁琐,故将监控接入到zabbix. 概述 由于阿里云已做了RDS的监控,我们只需要通过阿里云SDK把这些 ...
- 三极管和MOS管驱动电路的正确用法
1 三极管和MOS管的基本特性 三极管是电流控制电流器件,用基极电流的变化控制集电极电流的变化.有NPN型三极管(简称P型三极管)和PNP型三极管(简称N型三极管)两种,符号如下: MOS管是电压控制 ...
- Machine learning(4-Linear Regression with multiple variables )
1.Multiple features So what the form of the hypothesis should be ? For convenience, define x0=1 At t ...
- TensorFlow从入门到入坑(2)
TensorFlow学习(2) 一.jupyter notebook的安装和使用 1. 什么是jupyter notebook jupyter notebook(http://jupyter.org/ ...
- DC综合与Tcl语法结构概述
转载:https://www.cnblogs.com/IClearner/p/6617207.html 1.逻辑综合的概述 synthesis = translation + logic optimi ...
- Python import urllib2 ImportError: No module named 'urllib2'
python3 import urllib2 import urllib2 ImportError: No module named 'urllib2' python3.3里面,用urllib.req ...