#P17578. [JAG 2026 Summer Camp #3] Guess Palindrome
[JAG 2026 Summer Camp #3] Guess Palindrome
题目描述
Alice 有一个隐藏的字符串 ,长度为 ,仅由 a 和 b 两种字符组成。由于她喜欢对称的字符串,已知 是一个回文串。你的任务是通过向 Alice 提出以下类型的询问来确定 :
- 你给出一个任意的非空字符串 ,其长度不超过 ,且仅由
a和b组成。 - Alice 回答一个整数,表示 作为连续子串在 中出现的次数。相互重叠的出现也会被计数。
然而,为了不让 Alice 不高兴,你最多只能询问 次。
请编写一个程序,在给定的询问次数限制内确定隐藏字符串 。
交互方式
首先,从标准输入读入 的长度 ()。
读入后,你可以开始询问。对于使用字符串 的询问,向标准输出打印以下格式,其中 必须是长度不超过 、仅由 a 和 b 组成的非空字符串。
? T
作为该询问的回复,标准输入会给出一个整数,表示 作为连续子串在 中出现的次数。
确定 后,按照以下格式向标准输出打印答案。
! S
你最多可以进行 次询问,并且必须恰好输出一次答案。输出答案后,程序必须立即终止。
如果程序违反指定的格式、超出询问次数或答案输出次数的限制,或者输出任何额外内容,则会被判为答案错误。注意,每次输出后可能需要刷新输出缓冲区。还需要注意,本题的交互器是非自适应的:交互器会在交互开始前确定 。
9
1
1
4
? aabb
? baa
? aa
! bbaaaaabb