UVALive - 2326 Moving Tables
来源:互联网 发布:flash编程教程 编辑:程序博客网 时间:2024/05/20 17:25
题意:求最少的时间将桌子搬完,每次需要十分钟,但如果两次的区间步冲突的话,那么这两次是可以同时进行的,首先我们先排序,将尽量靠左边的排在前面,我们每次都先将最小的装进去,然后判断之后是否有可以继续装进去的区间,直到所有的判断完毕
#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>using namespace std;const int MAXN =205;struct Node{ int l; int r; friend bool operator <(const Node &a,const Node &b){ if (a.l != b.l) return a.l < b.l; return a.r < b.r; }}arr[MAXN];int vis[MAXN];int main(){ int t,n; scanf("%d",&t); while (t--){ memset(vis,0,sizeof(vis)); scanf("%d",&n); for (int i = 0; i < n; i++){ int a,b,t; scanf("%d%d",&a,&b); if (a > b){ t = a; a = b; b = t; } arr[i].l = (a + 1) / 2; arr[i].r = (b + 1) / 2; } sort(arr,arr+n); int cur = 0,ans = 0; while (cur < n){ ans++; int end = 0; for (int i = 0; i < n; i++){ if (vis[i]) continue; if (arr[i].l > end){ end = arr[i].r; cur++; vis[i] = 1; } } } printf("%d\n",ans*10); } return 0;}
- UVALive - 2326 Moving Tables
- UVALive - 2326 Moving Tables
- UVALive 2326 Moving Tables 贪心
- UVALive - 2326 Moving Tables 贪心
- UVAlive 2326 Moving Tables(贪心 + 区间问题)
- uvalive 2326 - Moving Tables(区间覆盖问题)
- UVALIVE 2326 moving tables 不相交区间问题
- UVALive 2326 Moving Tables(贪心+不相交区间问题)
- uva live 2326 - Moving Tables
- Moving Tables
- Moving Tables
- Moving Tables
- Moving Tables
- Moving Tables
- Moving Tables
- Moving Tables
- Moving Tables
- Moving Tables
- NodeJs_2
- android 树型组件(ExpandableListView)
- linux引导流程分析
- 使用AppWidget进行广播更新
- APP在线制作平台,手机应用,手机App开发,手机客户端开发
- UVALive - 2326 Moving Tables
- ubuntu start
- Android JNI开发入门之一
- 实现求出若干整数之和为500的连续整数(如98,99,100,101,102)的所有组合&&产生一个int数组,长度为100,并向其中随机插入1~100,要求不能重复
- Struts是如何实现MVC的
- 正则表达式
- 一步步学算法(算法题解)---1
- c++多态性与虚函数(二)
- 2011-10-9百度技术,软件研发笔试题(90%)