国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

BZOJ2794: [Poi2012]Cloakroom

2019-11-06 06:44:35
字體:
供稿:網(wǎng)友

限制是a[i]<=m,b[i]>m+s,c[i]和為k 考慮到k<=100000,而a,b都很大,可以轉(zhuǎn)化一下,變成詢問是否有c[i]和為k,a[i]<=m,b[i]的最小值>m+s的情況,那么就可以按照詢問的m排序,做一個(gè)DP

code:

#include<set>#include<map>#include<deque>#include<queue>#include<stack>#include<cmath>#include<ctime>#include<bitset>#include<string>#include<vector>#include<cstdio>#include<cstdlib>#include<cstring>#include<climits>#include<complex>#include<iostream>#include<algorithm>#define ll long long#define lowbit(x) x&(-x)using namespace std;void read(int &x){ char c; while(!((c=getchar())>='0'&&c<='9')); x=c-'0'; while((c=getchar())>='0'&&c<='9') x=(x<<3)+(x<<1)+c-'0';}void up(int &x,int y){if(x<y)x=y;}void down(int &x,int y){if(x>y)x=y;}const int maxn = 1100;const int maxm = 1100000;struct qu{ int m,k,s,i;}q[maxm]; int m;struct node{ int a,b,c;}a[maxn]; int n;bool cmp(node x,node y) { return x.a<y.a; }bool cmpq(qu x,qu y) { return x.m<y.m; }int v[110000];bool ans[maxm];int main(){ memset(ans,true,sizeof ans); int mx=0,mxk=0; read(n); for(int i=1;i<=n;i++) { read(a[i].c); read(a[i].a); read(a[i].b); up(mx,a[i].b); }sort(a+1,a+n+1,cmp); read(m); for(int i=1;i<=m;i++) { q[i].i=i; read(q[i].m); read(q[i].k); read(q[i].s); up(mxk,q[i].k); if((ll)q[i].m+q[i].s>(ll)mx) ans[i]=false; }sort(q+1,q+m+1,cmpq); memset(v,0,sizeof v); v[0]=mx; int nw=1; for(int i=1;i<=n;i++) { while(nw<=m) { if(!ans[q[nw].i]) nw++; else if(q[nw].m<a[i].a) { ans[q[nw].i]=v[q[nw].k]>(q[nw].m+q[nw].s); nw++; } else break; } if(nw>m) break; for(int j=mxk;j>=a[i].c;j--) up(v[j],min(v[j-a[i].c],a[i].b)); } while(nw<=m) { if(!ans[q[nw].i]) nw++; else ans[q[nw].i]=v[q[nw].k]>(q[nw].m+q[nw].s),nw++; } for(int i=1;i<=m;i++) { if(ans[i])
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 安陆市| 当涂县| 东阳市| 宽城| 清新县| 峨山| 怀仁县| 中超| 若尔盖县| 绍兴市| 民丰县| 乾安县| 噶尔县| 东港市| 无锡市| 郯城县| 海兴县| 海林市| 平果县| 临江市| 满洲里市| 玉屏| 祁东县| 天等县| 察哈| 沙洋县| 汽车| 广州市| 定西市| 太保市| 东阿县| 双牌县| 如皋市| 改则县| 合山市| 武山县| 通化县| 庄河市| 邛崃市| 墨玉县| 保德县|