摘要: 中文题,题意就不说了不过想不到并查集这样用对于题目中的路,按速度进行排序,这样,如果从第 i 条路到第 j 条路之间的所有路能够让 i 和 j 连通,那么,这就存在一条路,且这条路的舒适度就是 两者的差值。 这样,只要枚举从每一条路开始,向前找到可以使得 起点和终点连通的路的舒适度,就可以找到答案了View Code #include<iostream>#include<algorithm>using namespace std;struct edge{ int u,v,w;}e[1001];int f[201],n,m;bool cmp(edge a,edge b){ 阅读全文
posted @ 2012-02-13 21:17 枕边梦 阅读(1092) 评论(0) 推荐(0) 编辑
摘要: 题意:还是类似迷宫问题,已知起点和终点,在规定时间内求出到达终点的最少时间。有俩种行走方式1)飞行:除了遇到‘#’ 以外,任何地方都能穿过,但需要消耗1s,同时消耗1 魔法值注意:理论上遇到一个‘@’要消耗俩点魔法值,因为离开这个‘@’ 要消耗2点魔法值2)行走:有俩种情况不能走,1,遇到‘#’;2当前点是‘@’ 或者遇到的点是‘@’View Code #include<iostream>#include<algorithm>#include<queue>using namespace std;char g[100][100];bool vis[88][88 阅读全文
posted @ 2012-02-13 15:10 枕边梦 阅读(269) 评论(0) 推荐(0) 编辑
摘要: 题意:射箭游戏,已知箭头的初始位置是(0,0),速度为v,靶的位置为(x,y),要求算出射中靶心的最小的角度,若不能射中,则输出-1分析:借鉴之前几道三分的思想,很明显的一点是,关于高度h关于角度θ的函数是凸函数,首先三分枚举角度值,求出到达x时的最大高度利用最大高度判断能否射中,若能,则继续二分θ逼近y,最后求出最小的θ当然,此题还存在纯物理公式的解法参考下面的博客http://www.cnblogs.com/newpanderking/archive/2011/08/25/2153590.htmlView Code #include<iostream>#include<a 阅读全文
posted @ 2012-02-13 01:13 枕边梦 阅读(446) 评论(0) 推荐(0) 编辑