AT_tkppc6_2_d.NG Word Game
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
这是一个和计算机进行交互的题目。
kaage 君和 penguinman 君在玩一个叫做 NG 单词的游戏。游戏规则如下:
- penguinman 君会选择一个由
0和1构成的长度为 N 的字符串,作为 NG 单词。 - kaage 君则需要通过反复询问的方式来找出这个 NG 单词:
- 每次,他会选择一个长度在 1 到 3000 之间的二进制字符串 S。
- 然后询问这个字符串 S 是否包含 NG 单词作为它的子序列。
- 如果 kaage 君能够在不超过 2000 次询问内找出 NG 单词,他将获胜。否则,penguinman 君获胜。
由于 kaage 君本人很忙,他委托你来编写一个程序,以帮助找出这个 NG 单词。
请注意,一个字符串 X 是另一个字符串 Y 的子序列,意味着可以从 Y 中删除若干字符(可以不删除任何字符)后,顺序不变地得到 X。
输入格式
首先,给出一个整数 N,表示 NG 单词的长度:
N
接下来,你需要通过多次询问来确定 NG 单词。每次询问时应输出一个由 0 和 1 组成的字符串 S,它的长度在 1 至 3000 之间:
? S
对于每个询问,将收到一个回答,表示 NG 单词是否是 S 的子序列,用 Yes 或 No 表示。
当你确定了 NG 单词时,输出该单词:
! NG
注意,最终输出 NG 单词的操作不计入询问次数。
可以证明,在不超过 2000 次询问中,一定能够找出 NG 单词。
数据范围与提示
- 1≤N≤1000
- N 是一个整数
注意事项
- 在每次输出后,请确保刷新输出,否则可能会出现超时(TLE)。
- 在输出 NG 单词并确定答案后,程序应结束运行,否则判题结果可能不确定。
- 如果输出格式错误或询问次数超过 2000,结果可能是不确定的。
示例
以下是一个例子:N=3,假设 NG 单词为 110 的交互过程。注意,这只是一个例子,具体实现可能不需要完全符合示例的交互顺序。
程序输入(裁判的输出)程序输出:
3
? 1000010
Yes
? 00101
No
? 110
Yes
! 110
原案: kaage
本翻译由 AI 自动生成
输入解题思路,AI测评打分。不知道怎么写?