杭电acm1030,求解题思路? 10
看了半天没看出来。水了,各位大侠帮帮忙啊!尽量具体点!先谢谢了网址;http://acm.hdu.edu.cn/showproblem.php?pid=1030...
看了半天没看出来。水了,各位大侠帮帮忙啊!尽量具体点!先谢谢了网址;http://acm.hdu.edu.cn/showproblem.php?pid=1030
展开
1个回答
展开全部
刚在别人那看到这个题。写了点思路,复制给你吧...
临时看的题目,想的一个思路,没实践,仅供参考。
已经知道了起点m和终点n,现在就是要找到一个通用的规律让m尽快到达n。
由图形中可以看出,假设一个起点是处于三角形的顶部,比如1,2,4,5,7,9...
那么它到它下面某一层的点的距离都是一样的,比如1到2和1到4。比如2到10和2到12和2到14。等等
根据这个规律我们可以想到,如果n是在m为顶点的三角形的下面,那么只要找出之间隔了有多少层,问题就解决了。
如果m不是三角形的顶点,我们可以找到m所在的最小的三角形,比如6就是2,8就是4,13就是7......
如何判断是否在某点下面,首先终点n的值我们是知道的,我们可以算出它所在的层数。
那么m和n之间的层数差我们就知道了,我们可以算出顶点的左右边界,如何加以判断。
在的话,规律很好找。不在的话,在左右边界中找到n最近的边界点,算出差值,就是额外的步数,再加上到这一层的步数。
找规律的话,假设顶点f(x)在第x层,那么它到下一层x+1层的右边界就是 f(x)+2*x-1 左边界就是f(x)+2x+1,依次类推,每隔一层顶点到边界的步数就加2。
当然你也可以找通用表达式,这个事情我就不做了
纯手打,可能没表达清楚,可以一起探讨。
http://zhidao.baidu.com/question/531972411.html?sort=6&old=1#answer-1342933539
临时看的题目,想的一个思路,没实践,仅供参考。
已经知道了起点m和终点n,现在就是要找到一个通用的规律让m尽快到达n。
由图形中可以看出,假设一个起点是处于三角形的顶部,比如1,2,4,5,7,9...
那么它到它下面某一层的点的距离都是一样的,比如1到2和1到4。比如2到10和2到12和2到14。等等
根据这个规律我们可以想到,如果n是在m为顶点的三角形的下面,那么只要找出之间隔了有多少层,问题就解决了。
如果m不是三角形的顶点,我们可以找到m所在的最小的三角形,比如6就是2,8就是4,13就是7......
如何判断是否在某点下面,首先终点n的值我们是知道的,我们可以算出它所在的层数。
那么m和n之间的层数差我们就知道了,我们可以算出顶点的左右边界,如何加以判断。
在的话,规律很好找。不在的话,在左右边界中找到n最近的边界点,算出差值,就是额外的步数,再加上到这一层的步数。
找规律的话,假设顶点f(x)在第x层,那么它到下一层x+1层的右边界就是 f(x)+2*x-1 左边界就是f(x)+2x+1,依次类推,每隔一层顶点到边界的步数就加2。
当然你也可以找通用表达式,这个事情我就不做了
纯手打,可能没表达清楚,可以一起探讨。
http://zhidao.baidu.com/question/531972411.html?sort=6&old=1#answer-1342933539
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询