我的电动车库门的工作方式如下:
- 只有一个按钮可以控制门
- 如果门完全关闭并且我按下了按钮,则门开始打开。完全打开需要10秒
- 如果门完全打开并且我按下了按钮,则门开始关闭。完全关闭需要10秒
- 如果门是在打开或关闭过程中的一部分,而我按下了按钮,则门将停止并部分打开。
- 每当门停止移动时,无论是自动完成打开或关闭动作,还是由于在动作中途按下按钮而手动中断时,机构都会倒转并记住下一个动作的方向。
- 如果在门停止但部分打开时按下按钮,则完成操作所需的时间将少于完成该操作所需移动的时间的10秒。
假设门在开始时完全关闭。
将给出一个整数输入列表。这些整数是我连续两次按下控制按钮之间等待的秒数。
输出两件事:
- 一旦完成所有按钮的按下并且门已达到稳定状态,指示门状态的百分比。
%符号的输出是可选的。 - 在下一次按下按钮时就明确指示门将向哪个方向行驶。可以是
up/down,U/D,+/-,1/0或您选择的任何内容。
您可能会假设门无限短地少于10秒才能完成打开或关闭动作。
输入示例:
<empty list> # button was pushed just once
20 # button was pushed twice with 20 seconds between
10
5
20 20
10 10
5 5
1 2 3
8 9 10 11
11 10 9 8 7
与上述投入相对应的预期产出
100% D
0% U
0% U
50% D
100% D
100% D
0% U
100% D
0% U
20% U
最后测试的工作示例
- 门开始关闭。按下按钮
- 等待11秒钟。门最终完全打开。按下按钮。
- 等待10秒钟。门最终完全关闭。按下按钮。
- 等待9秒钟。按下按钮。门停在90%打开的位置。
- 等待8秒钟。按下按钮。门开始关闭。
- 等待7秒钟。按下按钮。门停在20%打开的位置。下一个方向将向上。
您的车库门停在半开状态,如果您在关闭时按下按钮,您会知道吗?我的不是,只是为了开放。
—
巴林特,2016年
@Bálint都是我的。
—
Digital Trauma
@Maltysen现在坚持使用百分比。
—
Digital Trauma
如果输入也包含浮点数,则输出浮点数可以吗?
—
卡普
@ R.Kap是的,很好。
—
Digital Trauma