CF1965D.Missing Subarray Sum

省选/NOI-

通过率:0%

AC君温馨提醒

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

题目描述

有一个长度为 nn 的正整数数组 aa,你不知道它的具体内容。你已知 aa 是一个回文数组,也就是说,对于所有 1≤i≤n1 \le i \le n,都有 ai=an+1−ia_i = a_{n + 1 - i}。你得到了该数组所有不同子数组的和(除了其中一个),这些和被打乱顺序给出。缺失的子数组和可以是 aa 的 n(n+1)2\frac{n(n+1)}{2} 个不同子数组中的任意一个。

请你还原出任意一个可能的回文数组 aa。输入保证至少存在一个满足条件的数组 aa。

如果数组 bb 可以通过从 aa 的开头和结尾各删除若干(可以为零或全部)元素得到,则称 bb 是 aa 的一个子数组。

输入格式

输入的第一行包含一个整数 tt(1≤t≤2001 \le t \le 200),表示测试用例的数量。

每个测试用例的第一行包含一个整数 nn(3≤n≤10003 \le n \le 1000),表示数组 aa 的长度。

每个测试用例的第二行包含 n(n+1)2−1\frac{n(n+1)}{2} - 1 个整数 sis_i(1≤si≤1091\leq s_i \leq 10^9),表示除了一个以外的所有子数组和。

保证所有测试用例中 nn 的总和不超过 10001000。

输入的额外约束:总是存在至少一个合法解。

本题不支持 Hack。

输出格式

对于每个测试用例,输出一行 nn 个正整数 a1,a2,⋯ ,ana_1, a_2, \cdots, a_n,表示任意一个满足条件的回文数组 aa。

如果有多组解,输出任意一组均可。

输入输出样例

  • 输入#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]a = [1, 2, 1] 的所有子数组为:

  • [1][1],和为 11,
  • [2][2],和为 22,
  • [1][1],和为 11,
  • [1,2][1, 2],和为 33,
  • [2,1][2, 1],和为 33,
  • [1,2,1][1, 2, 1],和为 44。

所以所有子数组和为 1,1,2,3,3,41, 1, 2, 3, 3, 4,输入中缺失的和为 33。

对于第二个样例,缺失的子数组和为 44,对应子数组 [2,2][2, 2]。

对于第三个样例,缺失的子数组和为 1313,因为有两个子数组和为 1313([3,5,5][3, 5, 5] 和 [5,5,3][5, 5, 3]),但输入中 1313 只出现了一次。

由 ChatGPT 4.1 翻译

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

首页