luogu#P16394. [ECUSTPC 2026 Spring] 回响形态

    ID: 16514 远端评测题 1000ms 1024MiB 尝试: 0 已通过: 0 难度: 5 上传者: 标签>数学Special Judge构造2026高校校赛

[ECUSTPC 2026 Spring] 回响形态

背景

:::epigraph 你构造序列成功了?

你构造序列成功 :::

题目描述

构造王国还在追击小 T……

定义一个长度为 nn 的序列的前缀 max\max 序列 xxxi=max{aj:1ji}x_i = \max\{a_j : 1 \le j \le i\},前缀 min\min 序列 yyyi=min{aj:1ji}y_i = \min\{a_j : 1 \le j \le i\}

对于给定的 nnkk,请构造两个满足如下条件的长度为 nn 的序列 aabb,如果不存在满足下述条件的两个序列,请报告无解:

  • aabb11nn 的排列。
  • aabb 有至少一项不同,也即存在 ii 满足 aibia_i \ne b_i
  • 对于 aabb 的中的任意一个序列,记其前缀 max\max 序列为 xx,前缀 min\min 序列为 yy,需要满足:
i=1n(xiyi)=k.\sum_{i=1}^{n}(x_i - y_i) = k.

输入格式

第一行输入一个整数 T (1T105)T \ (1 \le T \le 10^5),表示测试数据的数量。

每组测试数据一行输入两个整数 nnk (2n105,0k1010)k \ (2 \le n \le 10^5, 0 \le k \le 10^{10}),表示序列的长度和前缀 max\maxmin\min 的差。

保证所有测试数据的 n3×105\sum n \le 3 \times 10^5

输出格式

对于每组测试数据,若存在满足条件的两个序列则输出两行。

第一行输出 nn 个整数 a1,a2,,ana_1, a_2, \dots, a_n 表示你构造的第一个序列 aa

随后一行输出 nn 个整数 b1,b2,,bnb_1, b_2, \dots, b_n 表示你构造的第二个序列 bb

若不存在满足条件的两个序列,则输出一行一个整数 1-1

如果有多个合法的答案则你可以输出其中任意一个。

3
2 1
2 0
5 12
1 2
2 1
-1
1 3 4 2 5
1 2 4 5 3

提示

样例 1 解释

对于第 3 组测试数据,我们验证第二个序列也就是 bb 序列是否符合条件:

  • {1,2,4,5,3}\{1, 2, 4, 5, 3\} 是一个 1155 的排列,因为其中各个整数都出现且仅出现了一次。
  • 第二项 a2=3a_2 = 3, b2=2b_2 = 2, a2b2a_2 \ne b_2
  • 其前缀 max\max 序列为 x={1,2,4,5,5}x = \{1, 2, 4, 5, 5\},前缀 min\min 序列为 y={1,1,1,1,1}y = \{1, 1, 1, 1, 1\},即得
$$\sum_{i=1}^{n}(x_i - y_i) = (1 - 1) + (2 - 1) + (4 - 1) + (5 - 1) + (5 - 1) = 0 + 1 + 3 + 4 + 4 = 12 = k.$$

提示

一个 11nn 的排列是一个长度为 nn 且其中每个 11nn 的整数都出现且仅出现一次的序列。