小芳的排列构造
题号:NC302880
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld

题目描述

在此题中,我们认为数组以从左到右的顺序排列。
对于一个数组 ,小芳定义两个函数  与  为:
\hspace{23pt} \bullet:数组中所有满足“大于其侧所有数”的数之和。
\hspace{23pt} \bullet:数组中所有满足“大于其侧所有数”的数之和。
如,设一个数组 b = \{2,3,4,3,5,1\},则 L\left( b\right) = 2+3+4+5 =14

小芳希望小红构造一个长为  的排列 ,使得 。请你帮帮小红。

【名词解释】
\hspace{15pt}排列:长度为 n 的排列是由 1,2,\dots,n 这 n 个整数、按任意顺序组成的数组(每个整数均恰好出现一次)。例如,\{2,3,1,5,4\} 是一个长度为 5 的排列,而 \{1,2,2\} 和 \{1,3,4\} 都不是排列,因为前者存在重复元素,后者包含了超出范围的数。

输入描述:

第一行输入两个整数 n,k\left(1\leqq n\leqq2\times10^5,1\leqq k \leqq 10^{12}\right)

输出描述:

如果不存在这样的排列,请输出 ,否则输出  个整数,代表所构造的排列 
\hspace{15pt}如果存在多个解决方案,您可以输出任意一个,系统会自动判定是否正确。注意,自测运行功能可能因此返回错误结果,请自行检查答案正确性。
示例1

输入

复制
4 14

输出

复制
1 2 3 4

说明

在此答案中,
示例2

输入

复制
3 10

输出

复制
-1

说明

可以证明不存在符合条件的排列。