CF1965D.Missing Subarray Sum
省选/NOI-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
有一个长度为 n 的正整数数组 a,你不知道它的具体内容。你已知 a 是一个回文数组,也就是说,对于所有 1≤i≤n,都有 ai=an+1−i。你得到了该数组所有不同子数组的和(除了其中一个),这些和被打乱顺序给出。缺失的子数组和可以是 a 的 2n(n+1) 个不同子数组中的任意一个。
请你还原出任意一个可能的回文数组 a。输入保证至少存在一个满足条件的数组 a。
如果数组 b 可以通过从 a 的开头和结尾各删除若干(可以为零或全部)元素得到,则称 b 是 a 的一个子数组。
输入格式
输入的第一行包含一个整数 t(1≤t≤200),表示测试用例的数量。
每个测试用例的第一行包含一个整数 n(3≤n≤1000),表示数组 a 的长度。
每个测试用例的第二行包含 2n(n+1)−1 个整数 si(1≤si≤109),表示除了一个以外的所有子数组和。
保证所有测试用例中 n 的总和不超过 1000。
输入的额外约束:总是存在至少一个合法解。
本题不支持 Hack。
输出格式
对于每个测试用例,输出一行 n 个正整数 a1,a2,⋯,an,表示任意一个满足条件的回文数组 a。
如果有多组解,输出任意一组均可。
输入输出样例
输入#1
7 3 1 2 3 4 1 4 18 2 11 9 7 11 7 2 9 4 5 10 5 16 3 3 13 8 8 4 8 10 4 6 4 20 14 14 6 5 1 2 3 4 5 4 3 2 1 1 2 3 2 1 5 1 1 2 2 2 3 3 3 3 4 5 5 6 8 3 500000000 1000000000 500000000 500000000 1000000000
输出#1
1 2 1 7 2 2 7 3 5 5 3 6 4 4 6 1 1 1 1 1 2 1 2 1 2 500000000 500000000 500000000
说明/提示
对于第一个样例,a=[1,2,1] 的所有子数组为:
- [1],和为 1,
- [2],和为 2,
- [1],和为 1,
- [1,2],和为 3,
- [2,1],和为 3,
- [1,2,1],和为 4。
所以所有子数组和为 1,1,2,3,3,4,输入中缺失的和为 3。
对于第二个样例,缺失的子数组和为 4,对应子数组 [2,2]。
对于第三个样例,缺失的子数组和为 13,因为有两个子数组和为 13([3,5,5] 和 [5,5,3]),但输入中 13 只出现了一次。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?