CF2150E2.Hidden Single (Version 2)

省选/NOI-

通过率:0%

AC君温馨提醒

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

题目描述

AdhesiveWombat - Overdrive

⠀

本题有两个版本,它们对 tt、nn 以及最大查询次数有不同要求,解出其中一个版本不一定能解出另一个。你可能需要阅读两个版本。两种版本都禁止 hack。

这是一道交互题。

有一个隐藏数组 a1,a2,…,a2n−1a_1, a_2, \ldots, a_{2n-1},其中包含了 11 到 nn 所有的数。每个数都恰好出现两次,只有一个数只出现一次。

你可以进行如下格式的查询,其中 SS 是 $ {1, 2, \ldots, 2n-1} $ 的一个子集,xx 是区间 [1,n][1, n] 内的整数:

  • ask(S, x)\texttt{ask(S, x)}:是否存在 i∈Si \in S,使得 ai=xa_i = x?

请在不超过 925925 次查询内,找出只出现一次的那个数,你只需要找出该数是什么,不需要找出其位置。

注意,交互器不是自适应的,也就是说,隐藏数组不会根据你提出的查询而改变。

输入格式

每个测试包含若干个测试用例。第一行为测试用例数 tt(1≤t≤201 \le t \le 20)。每个测试用例的描述如下。

每个测试用例的第一行为一个整数 nn(n=300n = 300),表示隐藏数组 a1,a2,…,a2n−1a_1, a_2, \ldots, a_{2n-1} 中的最大值。

本题共 5050 组测试数据(包括样例)。样例中 t=1t = 1,其余测试中均为 t=20t = 20。

输出格式

null

输入输出样例

  • 输入#1

    1
    300
    
    0

    输出#1

    ? 187 1 1
    
    ! 187

说明/提示

在第一个测试用例中,n=300n = 300,所以隐藏数组长度为 2n−1=5992n-1 = 599。

# 选手输出 交互器回复 说明
1 ? 187 1 1 0 查询:a1=187a_1=187?否。
2 ! 187 我们猜答案是 187187。幸运的是答案正确。
我们总共询问了 1 次(输出答案不计入查询次数),小于最多允许的 925925 次查询数。

由 ChatGPT 5 翻译

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

首页