第一行为两个整数,表示字符串数量和字符串总长。
交互
要进行询问,请按以下格式输出一行(不含引号)
"? s"
代表你需要询问的串,注意,s的长度应不大于200!
此时会输入一个整数,代表在所有隐藏的字符串中作为前缀串共出现的次数.
要回答答案,请按以下格式输出一行(不含引号),如果有多个答案,你可以选择任何一种作为回答。
"! s"
代表你的答案,注意,s的长度应不大于200!
此时会输入一个整数,若,你的回答正确;若,你的回答错误.
若在任何时候输入的数为-1,说明你的询问超出次数/询问不合法/回答不合法/答案错误/其他输入错误,此时,你需要直接退出程序,接收到Wrong Answer。否则,你可能会得到任意一种错误类型作为回应
输出询问或回答后,不要忘记输出换行并刷新缓存区。否则,您可能会收到 Time limit exceeded 判定。为此,请使用:
在 C++ 中 fflush(stdout)或 cout.flush()
在 Java 中 System.out.flush()
在 Pascal 中 flush(output)
在 Python 中 stdout.flush()
对于其他语言,请参阅其他语言的文档。
交互器不是自适应的,这意味着在参与者提出查询之前就有确定答案,并且不依赖于参与者提出的询问。