BZOJ2794[Poi2012]Cloakroom——离线+背包
题目描述
有n件物品,每件物品有三个属性a[i], b[i], c[i] (a[i]<b[i])。
再给出q个询问,每个询问由非负整数m, k, s组成,问是否能够选出某些物品使得:
1. 对于每个选的物品i,满足a[i]<=m且b[i]>m+s。
2. 所有选出物品的c[i]的和正好是k。
输入
第一行一个正整数n (n<=1,000),接下来n行每行三个正整数,分别表示c[i], a[i], b[i] (c[i]<=1,000, 1<=a[i]<b[i]<=10^9)。
下面一行一个正整数q (q<=1,000,000),接下来q行每行三个非负整数m, k, s (1<=m<=10^9, 1<=k<=100,000, 0<=s<=10^9)。
输出
输出q行,每行为TAK (yes)或NIE (no),第i行对应第i此询问的答案。
样例输入
6 2 7
5 4 9
1 2 4
2 5 8
1 3 9
5
2 7 1
2 7 2
3 2 0
5 7 2
4 1 5
样例输出
NIE
TAK
TAK
NIE
#include<set>
#include<map>
#include<cmath>
#include<stack>
#include<queue>
#include<vector>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
struct node
{int a;int b;int c;int id;
}x[1010],y[1200000];
int f[100010];
int ans[1200000];
bool cmp(node x,node y)
{return x.a<y.a;
}
int n,m;
int main()
{scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%d%d%d",&x[i].c,&x[i].a,&x[i].b);}scanf("%d",&m);for(int i=1;i<=m;i++){scanf("%d%d%d",&y[i].a,&y[i].b,&y[i].c);y[i].id=i;}sort(x+1,x+n+1,cmp);sort(y+1,y+m+1,cmp);int num=1;f[0]=1e9;for(int i=1;i<=m;i++){while(num<=n&&x[num].a<=y[i].a){for(int k=100000;k>=x[num].c;--k){f[k]=max(f[k],min(f[k-x[num].c],x[num].b)); }num++;}if(f[y[i].b]>y[i].a+y[i].c){ans[y[i].id]=1;}}for(int i=1;i<=m;i++){ans[i]?printf("TAK\n"):printf("NIE\n");}
}
转载于:https://www.cnblogs.com/Khada-Jhin/p/9633107.html
BZOJ2794[Poi2012]Cloakroom——离线+背包相关推荐
- 一句话题解(20170801~20170125)
8.1 bzoj 4720 noip2016 换教室 floyd预处理+期望(薛定谔的猫) bzoj 4318 OSU! 三次函数期望值 从一次.二次推得 8.2 bzoj 1076 状压+期望DP ...
- eui插件不显示人物服务器,WOW下了个eui插件,不当心把伤害统计给关掉了结果现在死活找不到在哪。。...
Skada 伤害统计插件, 统计个人和团队的伤害,治疗,承受伤害等信息, 设置命令 /skada eui插件的可开关单体插件内容 包括五部分:DBM,MSBT,集合石,Skada,稀有检测. 此页设置 ...
- 基于动态背包的多场景广告序列投放算法
简介:电商广告是广告主接触其目标用户的重要手段.普遍的广告目标是在预算约束下,在一定时间范围内最大化广告主累计收入.实际应用中,广告的转化通常需要对同一用户进行多次曝光,直到该用户最终购买为止.但是, ...
- 3c技能和背包需要改建吗?_开发人员在背包中需要什么软技能?
3c技能和背包需要改建吗? by Ewa Mitulska-Wójcik 伊娃·米图尔斯卡(EwaMitulska-Wójcik) 开发人员在背包中需要什么软技能? (What soft skills ...
- VS Code 离线安装插件方法
本文以离线安装 C/C++ 插件为例进说明,其它语言的插件的离线安装方法类似. 离线安装 C/C++ 插件相对比较麻烦一些,主要是因为 C/C++ 插件还依赖其他需要在线下载的组件: C/C++ la ...
- 离线安装Visual Studio Code插件
在使用Visual Studio Code 开发时候,有时可能会碰到需要离线安装插件的情况.这时候就需要单独下载插件包,本文就以C/C++插件包为例说明如何离线安装Visual Studio Code ...
- 如何下载flash离线安装包
如何下载flash离线安装包 CreateTime--2018年4月14日16:02:13 Author:Marydon 1.下载地址 UpdateTime--2018年5月13日16点55分 ppa ...
- nexus 离线下载中央库索引
nexus可以在线更新中央仓库索引,但是更新速度慢,而且很有可能下载的索引不全.下面介绍一种离线更新中央仓库索引的方式,速度快并且可靠. 1.访问http://repo.maven.apache.or ...
- Markdown here 离线下载安装
1. 下载地址: http://www.xdowns.com/app/375878.html 2. 离线安装 国内用户可以在第三方插件网站下载拓展程序,常用的网站有 Extfans.Crx4Chrom ...
- BZOJ 3585: mex( 离线 + 线段树 )
离线, 询问排序. 先处理出1~i的答案, 这样可以回答左端点为1的询问.完成后就用seq(1)将1到它下一次出现的位置前更新. 不断这样转移就OK了 ------------------------ ...
最新文章
- 杨森翔的书法:正月十六试笔【圆光、斗方】
- JUC里面的相关分类|| java并发编程中,关于锁的实现方式有两种synchronized ,Lock || Lock——ReentrantLock||AQS(抽象队列同步器)
- 【中级软考】位示图bitmap是什么?(利用二进制的一位来表示磁盘中的一个盘块的使用情况)
- Java Bullshifier –生成大量随机代码库
- 求一个序列中最大的子序列_最大的斐波那契子序列
- 如何打造高大上的微信朋友圈 打造微信高逼格朋友圈教程
- python测验3_基于Python3的漏洞检测工具
- Express 常用中间件 body-parser 实现解析
- WebGL编程指南理论分析之物体层次模型(局部运动)
- c#listbox使用详解和常见问题解决
- KVM系列之硬件管理
- 5.8Ghz微波雷达感应技术,智能雷达传感器,人体感应技术方案
- 编程珠玑第一章习题解答
- 权重股启动意味着什么
- 关于马克思《青年在选择职业时的考虑》的读书报告
- html5简介及常用标签
- 聚合广告SDK文档(Kotlin)
- docker搭建mongodb高可用集群
- Linux编译x86架构内核出现_stack_chk_guard未定义错误
- Scrum 计划、站会、评审、回顾会议介绍
热门文章
- 超酷HTML5 3D动画精选
- 请领导过目文件怎么说_职场话题:当领导说“你定吧”,你会怎么做?
- h264流头类型分辨方法
- Dnsmasq+ipset+iptables基于域名的流量管理
- 《计算机网络教程》(微课版 第五版)第七章 网络安全 课后习题及答案
- 同余式 和 费马小定理
- C++算法之-小球问题
- mysql MERGE 错误(differently defined or of non-MyISAM type)
- 混淆矩阵 Confusion Matrix
- 街头篮球服务器一直维护,《街头篮球》2.8新版本停服维护更新公告