UVA_10020_Minimal coverage
2016-04-24 22:33
274 查看
#include<iostream> #include<sstream> #include<string> #include<vector> #include<list> #include<set> #include<map> #include<stack> #include<queue> #include<algorithm> #pragma warning(disable:4996) #include<cstdio> #include<cstdlib> using std::cin; using std::cout; using std::endl; using std::stringstream; using std::string; using std::vector; using std::list; using std::pair; using std::set; using std::multiset; using std::map; using std::multimap; using std::stack; using std::queue; using std::priority_queue; int main() { //freopen("input.txt", "r", stdin); //freopen("output.txt", "w", stdout); int T; while (cin >> T) { sign: while (T--) { int n; cin >> n; vector<pair<int, int>>segment; vector<int>result; int left, right; while (cin >> left >> right) { if (!left&&!right) { break; } if (right<0 || left>n) { continue; } segment.push_back({ left,right }); } right = 0; int j = 1000000000; for (int i = 0; i != segment.size(); i++) { if (segment[i].first <= 0 && segment[i].second > right) { j = i; right = segment[i].second; } } if (j == 1000000000) { cout << '0' << endl; if (T) { cout << endl; } continue; } else { result.push_back(j); } size_t i = 0; do { left = right; if (right >= n) { break; } int k = 1000000000; for (j=0;j!=segment.size();j++) { if (segment[j].first <= left&&segment[j].second > right) { right = segment[j].second; k = j; } } if (k == 1000000000) { cout << '0' << endl; if (T) { cout << endl; } goto sign; } else { result.push_back(k); } i++; }while(i!=segment.size()); cout << result.size() << endl; for (size_t i = 0; i < result.size(); i++) { cout << segment[result[i]].first << ' ' << segment[result[i]].second << endl; } if (T) { cout << endl; } } } return 0; }
相关文章推荐
- linux服务器 NFS挂载
- 从头认识多线程-2.2 synchronized持有对象锁与类锁的相同点
- Nginx 之二: nginx.conf 配置及基本优化
- 继承
- [Linux/Mac学习] grep用法心得
- 2015年在微信热传的100+经典技术文章-读书笔记
- grep命令最常用的功能总结
- .NET技术+25台服务器怎样支撑世界第54大网站
- 深入理解计算机操作系统——总体认识1
- Math类的round方法小解
- C++第4次实验——三色球问题
- Python运算符及案例
- 总结二
- adb logcat命令查看并过滤android输出log
- CGContextRef详解
- 技术分析之HTML
- 单例模式的七种写法
- IOS9关于搜索的认识和实现
- IOS9关于搜索的认识和实现
- 20145231第八周学习笔记