POJ2376_Cleaning Shifts_C++
题目:http://poj.org/problem?id=2376
英文题强行看不懂,只看的懂输入输出,输入n,m,下接n行每行一个区间两个数左端点 l,有端点 r
给出n个闭区间,求选择最少的区间能够完全覆盖[1,m]
经典的区间覆盖问题,按左端点升序排序
首先当前卡点为1,选择小于等于当前卡点的,尽量往右边扩
直到大于当前卡点,再将卡点设为右边能扩展到的最大值
统计答案,注意闭区间和左端点最小区大于 1 的情况
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<iostream>
#include<algorithm>
#include<ctime>
#include<queue>
#include<stack>
#define fre(x) freopen(x".in","r",stdin);freopen(x".out","w",stdout)
typedef long long LL;
typedef double db;
using namespace std; const int oo=,TL=,N=;
struct line
{
int l,r;
}
a[N];
inline bool cmp(line x,line y)
{
return x.l<y.l;
}
int main()
{
int n,m,i,k,x,ans=,j;
scanf("%d%d",&n,&m);
for (i=;i<=n;i++) scanf("%d%d",&a[i].l,&a[i].r);
sort(a+,a++n,cmp);
for (k=x=i=j=;i<=n;j=i)
{
while (a[i].l<=k&&i<=n&&x<m) x=max(x,a[i++].r);
ans++;
if ((k=x+)>m||i==j) break;
}
printf("%d\n",k<=m?-:ans);
return ;
}
本来以为水贪心可以一边A,结果交了七八遍全WA
就到网上去下标程拍,修改了2次之后把标程给拍WA了,自己A掉了(233333333333)
网上的题解也是错的一大片啊~欢迎 Hack
版权所有,转载请联系作者,违者必究
联系方式:http://www.cnblogs.com/hadilo/p/5932395.html
POJ2376_Cleaning Shifts_C++的更多相关文章
随机推荐
- LeetCode "Binary Tree Vertical Order"
BFS + HashTable class Solution { int maxl, minl; unordered_map<int, vector<int>> hm; pub ...
- Jedis编程设计:连接池
Jedis作为redis的最佳客户端,它提供了连接池的特性,"连接池"在通常情况下可以有效的提高应用的通信能力,并且这是一种良好的设计模式.Jedis的连接池设计基于apa ...
- php安装redis扩展
1.windows安装redis扩展 php_redis.dll (for windows) 的下载地址:http://windows.php.net/downloads/pecl/snaps/red ...
- 64. Minimum Path Sum
Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which ...
- CSS实现背景透明,文字不透明(各浏览器兼容)
/*CSS*/.waps{ background:url(07158.bmp) no-repeat top center fixed; width:1004px; text-align:center; ...
- PHP之单例模式的实现
单例模式: 单例模式又称职责模式:简单的说,一个对象(在学习设计模式之前,需要比较了解面向对象思想)只负责一个特定的任务: 单例类: 1.构造函数需要标记为private(访问控制:防止外部代码使用n ...
- SSH登录很慢问题的解决
用ssh连其他linux机器,会等待10-30秒才有提示输入密码.严重影响工作效率.登录很慢,登录上去后速度正常,这种情况主要有两种可能的原因: 1. DNS反向解析的问题 OpenSSH在用户登录的 ...
- Freescle cortex-A9(完善中...)
关键词:cortex-A9 , udoo ,mars board ; (内容参考,飞思卡尔官方网站,如有问题请联系本人) i.MX 6系列处理器推出了业界首个具有真正扩展性的多核平台,包括基于ARM® ...
- PLSQL_性能优化系列16_Oracle Tuning Analyze优化分析
2014-12-23 Created By BaoXinjian
- POJ2226 Muddy Fields 二分匹配 最小顶点覆盖 好题
在一个n*m的草地上,.代表草地,*代表水,现在要用宽度为1,长度不限的木板盖住水, 木板可以重叠,但是所有的草地都不能被木板覆盖. 问至少需要的木板数. 这类题的建图方法: 把矩阵作为一个二分图,以 ...