QOJ.ac

QOJ

実行時間制限: 2 s メモリ制限: 2048 MB 満点: 100 インタラクティブ

#5156. 兜圈子

統計

世界闻名的侦探赫尔克里·波洛(Hercule Poirot)正在“东方快车”(Disorient Express)的包厢里享用一杯美味的茶,这时列车员冲了进来。“我们弄丢了车厢数量的记录,”列车员惊呼道。你看,这列火车非同寻常,没有第一节或最后一节车厢。相反,车厢首尾相连形成了一个大圆环,这让列车员感到困惑。

Train. Unsplash License by Robin Ulrich on Unsplash

波洛思考了片刻。“这太奇怪了,”他说,“但我或许能帮你。”他伸手拿起了边桌上的灯。“你看,每节车厢都有一个像这样的电灯开关。通过在车厢之间移动并拨动这些开关,我们可以确定车厢的数量。”

列车员虽然持怀疑态度,但还是同意试一试。“我们很赶时间,”他说,“所以请在最多 $3n + 500$ 步内确定火车的车厢数量 $n$。”这里的一步是指移动到相邻车厢或拨动当前车厢的电灯开关。“我唯一确定的是 $n$ 至少为 3,最多为 5000。”

交互

这是一个交互式问题。你的提交将与一个交互器(interactor)进行交互,交互器会读取你提交程序的标准输出,并向你提交程序的标准输入写入数据。此交互需要遵循特定的协议:

交互器首先发送一个整数 $s$ ($s \in \{0, 1\}$),表示赫尔克里初始所在车厢的电灯开关状态。

随后,你的提交程序最多可以发送 $3n + 500$ 个步骤$^{1}$供赫尔克里执行,每一步通过打印一行格式为 “? a” 的内容来完成,其中 $a$ 为以下内容之一:

  • “left”,向顺时针方向移动到相邻车厢,
  • “right”,向逆时针方向移动到相邻车厢,或
  • “flip”,拨动当前车厢的电灯开关。

每执行一步后,交互器会回复一个整数 $s$ ($s \in \{0, 1\}$),表示赫尔克里在执行完请求的步骤后,当前所在车厢的电灯开关状态。

当你确定了车厢数量 $n$ 后,打印一行格式为 “! n” ($3 \le n \le 5000$) 的内容,随后交互将停止。打印答案不计入查询次数。

交互器是非自适应的;电灯开关的初始状态由交互器在任何交互发生前确定。请确保在每次写入后刷新缓冲区。使用超过 $3n + 500$ 次查询将导致错误答案(Wrong Answer)判决。

题目提供了一个测试工具以帮助你开发解决方案。

$^{1}$注意,$n$ 是当前测试用例中实际的车厢数量,而不是车厢数量的最大可能值。

样例

输入格式 1

0
1
1
0
1
1
1
1

输出格式 1

? right
? right
? right
? flip
? left
? left
? left
! 3

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.