早教吧 育儿知识 作业答案 考试题库 百科 知识分享

noip2005过河的路径压缩问题在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧.在桥上有一些石子,青蛙很讨厌踩在这些石子上.由于桥的长度和青蛙一次跳过的距离都是正整

题目详情
noip2005 过河 的路径压缩问题
在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧.在桥上有一些石子,青蛙很讨厌踩在这些石子上.由于桥的长度和青蛙一次跳过的距离都是正整数,我们可以把独木桥上青蛙可能到达的点看成数轴上的一串整点:0,1,……,L(其中L是桥的长度).坐标为0的点表示桥的起点,坐标为L的点表示桥的终点.青蛙从桥的起点开始,不停的向终点方向跳跃.一次跳跃的距离是S到T之间的任意正整数(包括S,T).当青蛙跳到或跳过坐标为L的点时,就算青蛙已经跳出了独木桥.
题目给出独木桥的长度L,青蛙跳跃的距离范围S,T,桥上石子的位置.你的任务是确定青蛙要想过河,最少需要踩到的石子数.
我想知道为什么两石头的距离超过100,则可压缩到100,谁能证明下,
▼优质解答
答案和解析
以前做过,我证明一下:好像ST最大值分别为10,那么我们尽量让ST不重合,也就是S=9,T=10,来看一下,下面是可以跳到的序列:
0,9,10,18,19,20,27,28,29,30,36,37,38,39,40 ……
90,91,92,93,94,95,96,97,98,99,100.
注意到在前面会有断开的区间,也就是状态不同,而81以后青蛙可以调到任何一个格,所以可以压缩到100.至于为什么不压缩到更低,是因为前面那些便于你理解,实际上是这个公式算的:lcm(max(T),max(T)-1)证明复杂从略.