AT_tkppc6_2_d.NG Word Game

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

这是一个和计算机进行交互的题目。

kaage 君和 penguinman 君在玩一个叫做 NG 单词的游戏。游戏规则如下:

  • penguinman 君会选择一个由 0 和 1 构成的长度为 NN 的字符串,作为 NG 单词。
  • kaage 君则需要通过反复询问的方式来找出这个 NG 单词:
    • 每次,他会选择一个长度在 11 到 30003000 之间的二进制字符串 SS。
    • 然后询问这个字符串 SS 是否包含 NG 单词作为它的子序列。
  • 如果 kaage 君能够在不超过 20002000 次询问内找出 NG 单词,他将获胜。否则,penguinman 君获胜。

由于 kaage 君本人很忙,他委托你来编写一个程序,以帮助找出这个 NG 单词。

请注意,一个字符串 XX 是另一个字符串 YY 的子序列,意味着可以从 YY 中删除若干字符(可以不删除任何字符)后,顺序不变地得到 XX。

输入格式

首先,给出一个整数 NN,表示 NG 单词的长度:

NN

接下来,你需要通过多次询问来确定 NG 单词。每次询问时应输出一个由 0 和 1 组成的字符串 SS,它的长度在 11 至 30003000 之间:

? SS

对于每个询问,将收到一个回答,表示 NG 单词是否是 SS 的子序列,用 Yes 或 No 表示。

当你确定了 NG 单词时,输出该单词:

! NGNG

注意,最终输出 NG 单词的操作不计入询问次数。

可以证明,在不超过 20002000 次询问中,一定能够找出 NG 单词。

数据范围与提示

  • 1≤N≤10001 \leq N \leq 1000
  • NN 是一个整数

注意事项

  • 在每次输出后,请确保刷新输出,否则可能会出现超时(TLE)。
  • 在输出 NG 单词并确定答案后,程序应结束运行,否则判题结果可能不确定。
  • 如果输出格式错误或询问次数超过 20002000,结果可能是不确定的。

示例

以下是一个例子:N=3N=3,假设 NG 单词为 110 的交互过程。注意,这只是一个例子,具体实现可能不需要完全符合示例的交互顺序。

程序输入(裁判的输出)程序输出:

3
? 1000010
Yes
? 00101
No
? 110
Yes
! 110

原案: kaage

本翻译由 AI 自动生成

输入解题思路,AI测评打分。不知道怎么写?

首页