P7383 「EZEC-6」加减
题目描述
给你两个数 $n,m$,你要将 $m$ 分为 $n$ 个**互不相同的正整数**(即这 $n$ 个数之和为 $m$),使得在区间 $[1,m]$ 中至少有一个正整数无法通过这 $n$ 个数加减取得(加减时每个数最多用 $1$ 次)。
即,设 $n$ 个正整数中第 $i$ 个数为 $a_i$,你要使在区间 $[1,m]$ 中至少有一个正整数无法被表示为 $\sum\limits^{n}_{i=1}k_i\times a_i\ (k_i\in\{-1,0,1\})$ 的形式。
若无解,输出 `-1`。
若有解,则输出任意一组满足要求的 $n$ 个正整数,并输出在区间 $[1,m]$ 中无法被表示出的任意一个数。
输入格式
**本题有多组数据**。
第一行一个正整数 $T$,表示数据组数。
对于每组数据,一行 $2$ 个正整数 $n,m$。
输出格式
对于每组数据:
若无解,输出一行 `-1`。
若有解,第一行输出 $n$ 个正整数,表示一组满足要求的解,第二行输出一个在区间 $[1,m]$ 中的正整数,该正整数无法被表示。
说明/提示
**本题采用捆绑测试**。
- Subtask 1(10 points):$n\le2$。
- Subtask 2(20 points):$2n^2\le m$。
- Subtask 3(20 points):$\lceil1.5n^2\rceil\le m$。
- Subtask 4(20 points):$n\le5$。
- Subtask 5(30 points):无特殊限制。
对于 $100\%$ 的数据,$1\le T\le100$,$1\le n,m\le10^4$。