POJ 2376 Cleaning Shifts
来源:互联网 发布:先锋软件学院地址 编辑:程序博客网 时间:2024/06/01 12:53
首先明确贪心策略,按L排序,每次选取符合条件的R最大的那个。
注意读题"A cow starts work at the start time and finishes after the end time. ".
熟悉区间枚举的方式。
注意读题"A cow starts work at the start time and finishes after the end time. ".
熟悉区间枚举的方式。
#ifdef _DEBUG#pragma warning(disable : 4996)#endif#include <iostream>#include <string>#include <vector>#include <stack>#include <queue>#include <deque>#include <set>#include <map>#include <algorithm>#include <functional>#include <sstream>#include <utility>#include <cstring>#include <cstdio>#include <cstdlib>#include <ctime>#include <cmath>#include <cctype>#define CLEAR(a, b) memset(a, b, sizeof(a))#define CLOSE() ios::sync_with_stdio(false)#define IN() freopen("in.txt", "r", stdin)#define OUT() freopen("out.txt", "w", stdout)#define PF(a) printf("%d\n", a)#define SF(a) scanf("%d", &a)#define SFF(a, b) scanf("%d%d", &a, &b)#define SFFF(a, b, c) scanf("%d%d%d", &a, &b, &c)#define FOR(i, a, b) for(int i = a; i < b; ++i)#define LL long long#define maxn 25005#define maxm 500005#define MOD 1000000007#define INF 1e18using namespace std;//-------------------------CHC------------------------------////POJ 2376 Cleaning Shiftsstruct Node {int l, r;bool operator<(const Node &rhs) const {return l < rhs.l;}}node[maxn];int main() {int n, t;while (~SFF(n, t)) {FOR(i, 0, n) SFF(node[i].l, node[i].r);sort(node, node + n);int cnt = 0;if (node[0].l != 1) {PF(-1);continue;}int idx = 0, last = 0, maxr = 0;while (idx < n) {bool have = false;while (idx < n && node[idx].l <= last + 1) {maxr = max(maxr, node[idx].r);have = true;idx++;}if (!have) break;last = maxr, cnt++;if (maxr >= t) break;}if (last < t) PF(-1);else PF(cnt);}return 0;}
阅读全文
0 0
- POJ 2376 Cleaning Shifts
- POJ 2376 Cleaning Shifts
- poj 2376 Cleaning Shifts
- POJ-2376-Cleaning Shifts
- poj 2376 Cleaning Shifts
- POJ 2376 Cleaning Shifts
- POJ 2376 Cleaning Shifts
- poj 2376 Cleaning Shifts
- POJ 2376 Cleaning Shifts
- poj 2376 Cleaning Shifts
- POJ-2376 Cleaning Shifts
- POJ 2376Cleaning Shifts
- POJ 2376 Cleaning Shifts
- poj 2376 Cleaning Shifts
- POJ - 2376 Cleaning Shifts
- POJ 2376 Cleaning Shifts
- POJ 2376 Cleaning Shifts
- poj 2376 Cleaning Shifts
- 去电流程分析---之二
- JDK自带工具类
- RCNN学习笔记(0):rcnn简介
- const引用const指针以及constexpr
- 陈皓写的性能调优
- POJ 2376 Cleaning Shifts
- 选择排序法
- 在原型中存储方法
- opencv 照片动漫风格
- 算法十七
- 算法——最短路径——Bellman-Ford算法
- HDU1027(next_permutation函数用法)
- Dynamics CRM2016 plugin注册step时报Assembly file name is in invalid format错的解决办法
- AtomicInteger源码分析——基于CAS的乐观锁实现