CF1305E Kuroni and the Score Distribution
题目描述
Kuroni 是下一场由 “Proof by AC” 团队出题的 Mathforces 比赛的协调员。所有的准备工作都已完成,他正在和团队讨论本场比赛的分数分配方案。
本场比赛包含 $n$ 道题目,编号从 $1$ 到 $n$。题目按照难度递增排列,且没有两道题目的难度相同。一次分数分配可以用一个数组 $a_1, a_2, \dots, a_n$ 表示,其中 $a_i$ 表示第 $i$ 道题目的分数。
Kuroni 认为分数分配应满足以下要求:
- 每道题目的分数应为不超过 $10^9$ 的正整数。
- 难度更高的题目分数应严格大于难度较低的题目,即 $1 \leq a_1 < a_2 < \dots < a_n \leq 10^9$。
- 分数分配的平衡性定义为满足 $1 \leq i < j < k \leq n$ 且 $a_i + a_j = a_k$ 的三元组 $(i, j, k)$ 的数量,要求其恰好为 $m$。
请帮助团队找到一个满足 Kuroni 要求的分数分配方案。如果不存在这样的分数分配方案,输出 $-1$。
输入格式
第一行包含两个整数 $n$ 和 $m$($1 \leq n \leq 5000$,$0 \leq m \leq 10^9$),分别表示题目数量和所需的平衡性。
输出格式
如果无解,输出一个整数 $-1$。
否则,输出一行 $n$ 个整数 $a_1, a_2, \dots, a_n$,表示满足要求的分数分配方案。如果有多组答案,输出任意一组均可。
说明/提示
在第一个样例中,有 $3$ 个三元组 $(i, j, k)$ 对分数分配的平衡性有贡献:
- $(1, 2, 3)$
- $(1, 3, 4)$
- $(2, 4, 5)$
由 ChatGPT 4.1 翻译