AT_tupc2024_j.Median Operations
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定一个正的奇数 N,以及 (1,2,…,N) 的一个排列 P=(P1,P2,…,PN)。
你最初拥有一个数列 A=P,你可以对数列 A 重复进行如下操作:
- 选择 A 的一个奇数长度的连续子序列。设选中的连续子序列的中位数为 m,从 A 中删除该连续子序列,并在其位置插入 m。
- 更加严格地说,选择满足 1≤l≤r≤∣A∣ 并且 r−l+1 为奇数的整数对 (l,r)。令 (Al,Al+1,…,Ar) 的中位数为 m,将 A 替换为 (A1,…,Al−1,m,Ar+1,…,An)。
对于每个 k=1,2,…,N,请判断通过若干次操作后,能否将 A 变为长度为 1 的数列 (k)。
有 T 个测试用例,请分别回答。
输入格式
输入通过标准输入按以下格式给出:
T case1 case2 ⋮ caseT
其中 casei 表示第 i 个测试用例,每个测试用例的格式如下:
N P1 P2 … PN
输出格式
请输出 T 行。
第 i 行输出第 i 个测试用例的答案,为长度为 N 的字符串。第 k 位为 1 表示可以通过若干次操作将序列变为 (k),否则为 0。
输入输出样例
输入#1
2 5 2 3 1 5 4 7 7 6 3 4 5 2 1
输出#1
00110 0101010
说明/提示
部分分数
- 对于满足额外约束“每个输入文件中所有 N 的总和不超过 5000”的数据集,答对可获得 10 分。
样例解释 1
对于第 1 个测试用例:
- 当 k=3 时:选择 (l,r)=(1,5),可以得到 A=(3)。
- 当 k=4 时:先选择 (l,r)=(1,3),得到 A=(2,5,4),再选择 (l,r)=(1,3),得到 A=(4)。
- 对于 k=1,2,5,不存在这样的操作序列。
数据范围
- 1≤T≤104
- 3≤N≤2×105
- N 为奇数
- (P1,P2,…,PN) 是 (1,2,…,N) 的一个排列
- 每个输入文件中所有 N 的总和不超过 2×105
- 所有输入均为整数
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?