题目大意:
已知n个与x轴平行的平台,和一个出发点,物体从出发点自由下落。落到平台上可向左或向右,求落到地面的最短时间。落不下来输出-1。
分析:
dp题目,不难,先按高从大到小将平台快排一遍,令left[i],right[i]-落到第i个平台向左走和向右走的最短时间,从后往前dp:
min(left[j]+(stages[i].l-stages[j].l),right[j]+(stages[j].r-stages[i].l)),stages[i].h-stages[j].h<=max_drop
left[i]=
inf,stages[i].h-stages[j].h>max_drop
右边跟左边差不多。如果最后结果大于等于inf就输出-1,否则输出答案。注意细节处理。
ps:貌似还可以构图做最短路,太麻烦了。
Source: