SP9655 ELEVTRBL - Elevator Trouble
题目描述
你正赶去参加程序测试员的第一次面试,却已经迟到了。面试地点位于一栋摩天大楼中,你现在站在第 $s$ 层,看到一部电梯。进入电梯后,你发现它只有两个按钮,分别是「向上 $u$ 层」和「向下 $d$ 层」。据你推测,按下「向上」按钮会让电梯上升 $u$ 层(如果楼上的楼层不够,那么按钮无效),而按下「向下」按钮则会让电梯下降 $d$ 层(同样,如果楼下的楼层不够,按钮无效)。你知道面试在第 $g$ 层,而整栋大楼有 $f$ 层,你需要迅速写个程序来计算你需要按多少次按钮才能到达目标楼层。如果根本无法通过这个电梯到达目标楼层,程序应输出「use the stairs」。
现给你 $f$、$s$、$g$、$u$、$d$ 这五个参数,分别表示总楼层数、起始楼层、目标楼层以及每次按下按钮所能移动的楼层数(往上或往下的层数)。请计算从 $s$ 层移动到 $g$ 层所需的最少按钮按压次数。如果无法通过该电梯到达目标楼层,请输出「use the stairs」。
输入格式
输入由一行组成,即 $f \ s \ g \ u \ d$,其中 $1 \leq s, g \leq f \leq 1000000$ 且 $0 \leq u, d \leq 1000000$。楼层是以 1 为起始编号,例如,若有 10 层,$s$ 和 $g$ 的取值范围是 $[1, 10]$。
输出格式
输出从 $s$ 层到 $g$ 层所需的最少按钮按压次数;如果根据电梯的配置无法到达目标楼层,请输出「use the stairs」。
**本翻译由 AI 自动生成**