HDU 1050 Moving Tables (贪心)
题意:在一个走廊两边都有对称分布的连续房间,现在有n张桌子需要从a移动到b房间。每次移动需要10分钟,
但是如果两次移动中需要经过相同的走廊位置,则不能同时进行,需要分开移动。最后求最少需要多长时间移动完所有的桌子。
析:这应该是一个贪心算法,时间尽量少,但是在一走廊如果相遇,必然是要分开的,所以说,我们只要统计,
统计在每个走廊的相遇的次数,然后再取最大值,如果最大值都成立了,那么其他的也会成立(想一下,为什么)。
你想一下,假设有另一个走廊,次数比它少,即使他们的桌子不相同,而其他那些可以在其他时间搬运过去,也不是超过最多次数。
代码如下:
#include <cstdio>
#include <iostream>
#include <cstring>
#include <algorithm>
#include <cmath> using namespace std;
const int maxn = 200 + 5;
int cnt[maxn]; int main(){
int n, T, a, b; cin >> T;
while(T--){
scanf("%d", &n);
memset(cnt, 0, sizeof(cnt));
for(int i = 0; i < n; ++i){
scanf("%d %d", &a, &b);
int minn = min(a, b); ++minn;
int m = max(a, b); ++m; for(int j = minn/2; j <= m/2; ++j)
++cnt[j];
} int m = 0;
for(int i = 0; i < maxn; ++i)
m = max(m, cnt[i]);
printf("%d0\n", m);
}
return 0;
}
HDU 1050 Moving Tables (贪心)的更多相关文章
- --hdu 1050 Moving Tables(贪心)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1050 AC code: #include<stdio.h> #include<str ...
- POJ 1083 && HDU 1050 Moving Tables (贪心)
Moving Tables Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) To ...
- hdu 1050 Moving Tables(迷之贪心...)
题意:有400间房间按题目中图片所给的方式排列,然后给出要移动的n张桌子所要移动的范围,每张桌子要移动的范围不能出现重叠的区域:问最少要多少次才能移动完所有的桌子. 题解思路:把题目转换下,就是有n个 ...
- hdu 1050 Moving Tables 解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1050 这道题目隔了很久才做出来的.一开始把判断走廊有重叠的算法都想错了.以为重叠只要满足,下一次mov ...
- hdu 1050 Moving Tables
http://acm.hdu.edu.cn/showproblem.php?pid=1050 这个题我首先直接用的常规贪心,用的和那个尽可能看更多完整节目那种思路.但是.......一直WA....T ...
- HDU – 1050 Moving Tables
http://acm.hdu.edu.cn/showproblem.php?pid=1050 当时这道题被放在了贪心专题,我又刚刚做了今年暑假不AC所以一开始就在想这肯定是个变过型的复杂贪心,但是后来 ...
- hdu 1050 Moving Tables (Greedy)
Problem - 1050 过两天要给12的讲贪心,于是就做一下水贪心练习练习. 代码如下: #include <cstdio> #include <iostream> #i ...
- hdu 1050 Moving Tables_贪心
题意:你搬n个桌子,桌子从一个地方搬到另一个地方,走廊只允许同时一个桌子通过,教室分布在两边,奇数在一边,偶数在一边,当桌子不冲突时可以同时搬运,冲突时要等别的那个桌子搬完再搬. 思路:因为奇数桌子在 ...
- hdoj 1050 Moving Tables【贪心区间覆盖】
Moving Tables Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Tot ...
随机推荐
- as3 air 保存文本内容的换行
private function newData() { var str:String="<root>"; for(var i in charCode_arr) { s ...
- Simple2D-15(音乐播放器)使用 glfw 库
glfw 是一个专门针对 OpenGL 的 C 语言库,它提供了一些渲染物体所需的最低限度的接口.它允许用户创建 OpenGL 上下文,定义窗口参数以及处理用户输入. 这次打算使用 GLFW 替代掉 ...
- 前端-CSS-4-伪类选择器&伪元素选择器
1.伪类选择器(爱恨原则) -------------------------------------------------------------------------------------- ...
- Java对字符串使用MD5进行加密(亲测有效)
转自:https://blog.csdn.net/jay314159/article/details/4918358 前言: MD5即Message-Digest Algorithm 5(信息-摘要算 ...
- DB分布式 跨库分页
DB分布式-两种方式 1. JDBC扩展 sharding-jdbc: 直接封装JDBC,代码迁移成本低,适用于任何连接池及ORM框架,JAR包提供服务,未使用中间层,不用额外部署,DBA无需 ...
- jenkins 没有maven选项,怎么办
第一步: 进入jenkins,点系统管理 第二:插件管理 点击“可选插件” 然后在右边的过滤输入框中输入搜索关键字: Maven Integration 或者 Pipeline Maven Int ...
- 两个关于URL解析的例子
例一: /* 解析URL查寻串中的name=value参数对 将name=value对存储在对象属性中,并返回对象 alert(getQuery().name) */ function getQuer ...
- 类定义,创建/销毁OC对象
类定义 1 OC类分为2个文件,一个是.h文件,一个是.m文件: 2 .h文件存放类.函数声明: 3 .m文件类的具体实现: 4 类声明使用关键字@interface.@end来声明: 5 类实现使用 ...
- jstl fmt
1)导入jstl 包,加载ftm标签 首先将jstl的jar包放入类库中,使用1.2版本 其次在jsp文件中引入所需要的 标记库,对于 ftm 标签,如下: <%@ taglib prefix= ...
- python中迭代问题
迭代list的时候不能修改这个list,否则,可能会出错. numbers=[1,0,3,5,0] numbers.sort() print(numbers) print('************* ...