HDU 1050(搬椅子 数学)】的更多相关文章

题意是在一个有 400 个房间的走廊中搬动房间里的椅子,如果两次的路线重叠,就要分两次搬动,如果不重叠,就可以一次搬动. 开始的时候直接当成求线段重叠条数的题,发现这种思路完全是错的,比如 1 - 3,2 - 4,3 - 5 这一组,只需搬动两次即可,但找重叠线段的话就会找到 3 条重叠线段. 然后打算直接模拟做,加入一点贪心的思路,用结构体数组存搬动要求,按椅子搬动的距离从小到大排序,扫描一边整个结构体数组,将搬动的路径标记, 若已经标记过,则 ++ans,注意 ans 的初值为 1,因为第一…
搬寝室 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 14107    Accepted Submission(s): 4751 Problem Description 搬寝室是很累的,xhd深有体会.时间追述2006年7月9号,那天xhd迫于无奈要从27号楼搬到3号楼,因为10号要封楼了.看着寝室里的n件物品,xhd开始发呆,因为n是…
Moving Tables Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 40796    Accepted Submission(s): 13405 Problem Description The famous ACM (Advanced Computer Maker) Company has rented a floor of a…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1050 AC code: #include<stdio.h> #include<string.h> int m[210]; int main(void) { int t,n,i,j,st,en,ma; scanf("%d",&t); while(t--) { memset(m,0,sizeof(m)); scanf("%d",&n)…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1050 这道题目隔了很久才做出来的.一开始把判断走廊有重叠的算法都想错了.以为重叠只要满足,下一次moving的起始room小于或等于上一次moving的结束room则证明有重复.这样只能保证局部不能同时进行moving,但是根本得不出其他moving哪些是可以同时进行搬动的. 正确的思路是,统计最大的重叠数,再乘以10即可.具体做法:把每个房间之间的走廊作为一个统计单位,当所有的办公桌都搬运完成之后…
http://acm.hdu.edu.cn/showproblem.php?pid=1050 这个题我首先直接用的常规贪心,用的和那个尽可能看更多完整节目那种思路.但是.......一直WA....T_T.... 后来在网上搜了一下这个题,发现好多人都有问题,都没有求出来,基本上都用的对尾部排序求的方法. 其实这个题因为是两排房间,所以1和2公用一个走廊,其中一个在需要移动的时候宁外一个还是不能移动. 所以我后面改了思路,直接改成了用两次排序直接找里面重叠部分最多的.(尾部排序的时候也要处理走廊…
http://acm.hdu.edu.cn/showproblem.php?pid=1050 当时这道题被放在了贪心专题,我又刚刚做了今年暑假不AC所以一开始就在想这肯定是个变过型的复杂贪心,但是后来看了题解用了巨简单的做法,统计每个点被几个区间覆盖过,找最多的那个就是答案了 感觉这种做法和物理里的动能定理啥的有点像(也不太恰当)(其实就是忽略全部具体过程,只看结果(?))…
so easy 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5650 Description Given an array with n integers, assume f(S) as the result of executing xor operation among all the elements of set S. e.g. if S={1,2,3} then f(S)=0. your task is: calculate xor…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1421 Problem Description 搬寝室是很累的,xhd深有体会.时间追述2006年7月9号,那天xhd迫于无奈要从27号楼搬到3号楼,因为10号要封楼了.看着寝室里的n件物品,xhd开始发呆,因为n是一个小于2000的整数,实在是太多了,于是xhd决定随便搬2*k件过去就行了.但还是会很累,因为2*k也不小是一个不大于n的整数.幸运的是xhd根据多年的搬东西的经验发现每搬一次的疲劳度是…
搬寝室 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 20642    Accepted Submission(s): 7013 Problem Description 搬寝室是非常累的,xhd深有体会.时间追述2006年7月9号,那天xhd迫于无奈要从27号楼搬到3号楼,由于10号要封楼了.看着寝室里的n件物品,xhd開始发呆,由于…