BZOJ 3410: [Usaco2009 Dec]Selfish Grazing 自私的食草者 离散化dp
来源:互联网 发布:琢磨先生妻子淘宝店 编辑:程序博客网 时间:2024/05/20 19:33
3410: [Usaco2009 Dec]Selfish Grazing 自私的食草者
Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 178 Solved: 153
[Submit][Status][Discuss]
Description
约翰有N(1≤N≤50000)头牛,约翰的草地可以认为是一条直线.每只牛只喜欢在某个特定的范围内吃草.第i头牛喜欢在区间(Si,Ei)吃草,1≤Si<Ei≤1,000,000,00.
奶牛们都很自私,他们不喜欢和其他奶牛共享自己喜欢吃草的领域,因此约翰要保证任意
两头牛都不会共享他们喜欢吃草昀领域.如果奶牛i和奶牛J想要同时吃草,那么要满足:Si>=Ej或者Ei≤Sj.约翰想知道在同一时刻,最多可以有多少头奶牛同时吃草?
Input
第1行:一个整数N.
第2到N+1行:第i+l行有两个整数Si,Ei.
Output
一个整数,最多可以有多少头牛同时吃草.
Sample Input
5
2 4
1 12
4 5
7 10
7 8
2 4
1 12
4 5
7 10
7 8
Sample Output
3
HINT
第1,3,4共3只奶牛可以同时吃草,第1,3,5也可以.
离散化之后dp,开心切掉
查题解 贪心
rank第一 倒数的 哈哈哈哈哈哈
#include<cmath>#include<ctime>#include<cstdio>#include<cstring>#include<cstdlib>#include<complex>#include<iostream>#include<algorithm>#include<iomanip>#include<vector>#include<string>#include<queue>#include<set>#include<map>using namespace std;typedef double db;inline int read(){int x=0,f=1;char ch=getchar();while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}while(ch<='9'&&ch>='0'){x=(x<<1)+(x<<3)+ch-'0';ch=getchar();}return x*f;}const int N=100100;int a[N],f[N],cnt;struct data{int l,r;}p[N>>1];map<int,int>mp;inline bool cmp(data x,data y){return x.r==y.r?x.l>y.l:x.r<y.r;}int main(){int n=read();for(int i=1;i<=n;i++){a[i*2]=read();a[i*2-1]=read();p[i].l=a[i*2];p[i].r=a[i*2-1];}sort(a+1,a+2*n+1);for(int i=1;i<=n<<1;i++)if(a[i]!=a[i-1])mp[a[i]]=++cnt;cnt++;for(int i=1;i<=n;i++)p[i].l=mp[p[i].l],p[i].r=mp[p[i].r];sort(p+1,p+1+n,cmp);int now=1;for(int i=1;i<=cnt;i++){f[i]=f[i-1];while(now<=n&&i>=p[now].r)f[i]=max(f[i],f[p[now++].l]+1);}printf("%d\n",f[cnt]);return 0;}
阅读全文
0 0
- BZOJ 3410: [Usaco2009 Dec]Selfish Grazing 自私的食草者 离散化dp
- 3410: [Usaco2009 Dec]Selfish Grazing 自私的食草者
- [贪心] BZOJ 3410 [Usaco2009 Dec]Selfish Grazing 自私的食草者
- [贪心]BZOJ 3410: [Usaco2009 Dec]Selfish Grazing 自私的食草者
- BZOJ 3410 [Usaco2009 Dec]Selfish Grazing 自私的食草者 贪心
- bzoj3410 [Usaco2009 Dec]Selfish Grazing 自私的食草者
- bzoj3410 [Usaco2009 Dec]Selfish Grazing 自私的食草者
- 【贪心】BZOJ3410(Usaco2009 Dec)[Selfish Grazing 自私的食草者]题解
- 【USACO2009Decsilver T1 自私的食草者
- toj3479 Selfish Grazing
- [Usaco09Dec] Selfish Grazing
- 【BZOJ 1774】 [Usaco2009 Dec]Toll 过路费
- Bzoj 1774 [Usaco2009 Dec]Toll 过路费
- BZOJ 1774 [Usaco2009 Dec] Toll 过路费
- (bzoj 1774 [Usaco2009 Dec]Toll 过路费)
- bzoj 3412: [Usaco2009 Dec]Music Notes乐谱
- bzoj 3412: [Usaco2009 Dec]Music Notes乐谱
- BZOJ 1775 [Usaco2009 Dec] Vidgame 电视游戏问题
- 第一篇博文
- 网站静态化处理—动静整合方案(2)
- win10 Hyper_v中Ubuntu虚拟机和主机共享文件
- 装备选择案列
- Leetcode练习<十三> 判断数据的插入位置
- BZOJ 3410: [Usaco2009 Dec]Selfish Grazing 自私的食草者 离散化dp
- 快乐数
- Mybatis用xml文件映射的增删查改
- 网络游戏中消息包结构
- CUDA入门学习(一)
- VirtualBox 启动报错 could not find an open hard disk with uuid 解决方法
- py-faster-rcnn流程(1)——准备阶段
- 网站静态化处理—动静分离策略(3)
- C/C++_log2000_2017春季算法实验1_1