bzoj:1828: [Usaco2010 Mar]balloc 农场分配
2016-11-24 18:33
369 查看
Description
/************************************************************** Problem: 1828 User: JSZX11556 Language: C++ Result: Accepted Time:208 ms Memory:3160 kb ****************************************************************/ #include<queue> #include<cstdio> #include<algorithm> #define MN 100002 using namespace std; int read_p,read_ca,read_f; inline int read(){ read_p=0;read_ca=getchar();read_f=1; while(read_ca<'0'||read_ca>'9') read_f=read_ca=='-'?-1:read_f,read_ca=getchar(); while(read_ca>='0'&&read_ca<='9') read_p=read_p*10+read_ca-48,read_ca=getchar(); return read_p*read_f; } priority_queue<int> q; struct na{int x,y;}s[MN]; int n,m,c[MN],p[MN],P,mmh; bool operator < (na a,na b){return a.x<b.x;} int main(){ register int i,j; n=read();mmh=m=read(); for (i=1;i<=n;i++) c[i]=read(); for (i=1;i<=m;i++) p[s[i].x=read()]++,p[(s[i].y=read())+1]--; sort(s+1,s+1+m); for (i=j=1;i<=n;i++){ P+=p[i]; while (s[j].x<=i&&j<=m) q.push(s[j].y+1),j++; while (P>c[i]) P--,p[q.top()]++,q.pop(),mmh--; } printf("%d\n",mmh); }
View Code
相关文章推荐
- BZOJ_1828_[Usaco2010 Mar]balloc 农场分配_线段树
- BZOJ 1828: [Usaco2010 Mar]balloc 农场分配 线段树 贪心
- bzoj 1828: [Usaco2010 Mar]balloc 农场分配【贪心+线段树】
- BZOJ 1828 [Usaco2010 Mar]balloc 农场分配(贪心+线段树)
- bzoj1828: [Usaco2010 Mar]balloc 农场分配 线段树+贪心
- 【BZOJ】1828: [Usaco2010 Mar]balloc 农场分配(经典贪心)
- BZOJ1828: [Usaco2010 Mar]balloc 农场分配
- [BZOJ1828][Usaco2010 Mar]balloc 农场分配(贪心+线段树)
- BZOJ 1828: [Usaco2010 Mar]balloc 农场分配
- BZOJ1828 [Usaco2010 Mar]balloc 农场分配
- bzoj 1828: [Usaco2010 Mar]balloc 农场分配 (贪心+线段树)
- [贪心][Usaco2010 Mar]balloc 农场分配
- 【bzoj1828/Usaco2010 Mar】balloc 农场分配——贪心+差分+优先队列
- [Usaco2010 Mar]balloc 农场分配
- BZOJ1828: [Usaco2010 Mar]balloc 农场分配 贪心+线段树
- BZOJ1828: [Usaco2010 Mar]balloc 农场分配
- 【bzoj1828】[Usaco2010 Mar]
- 【bzoj1828】[Usaco2010 Mar]
- BZOJ 1827: [Usaco2010 Mar]gather 奶牛大集会
- bzoj 1827: [Usaco2010 Mar]gather 奶牛大集会