1250: 权值游戏

内存限制:128 MB 时间限制:1.000 S 标准输入输出
题目类型:传统 评测方式:文本比较 上传者:
提交:2 通过:2 通过率:100%

题目描述

有这么一个游戏:

写出一个 1 至 N 的排列 ai,然后每次将相邻两个数相加,构成新的序列,再对新序列进行这样的操作,显然每次构成的序列都比上一次的序列长度少 ,直到只剩下一个数字位置。下面是一个例子:

3 , 1, 2, 4

  4, 3, 6

    7, 9

    16

最后得到 16 这样一个数字。

现在想要倒着玩这样一个游戏,如果知道 N ,知道最后得到的数字的大小 sum,请你求出最初序列 ai,为  N 的一个排列。若答案有多种可能,则输出字典序最小的那一个。

这里字典序指的是 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11

而不是 1, 10, 11, 2, 3, 4 ,5, 6, 7, 8, 9

输入格式

两个正整数 n, sum

输出格式

输出包括11行,为字典序最小的那个答案。

当无解的时候,请什么也不输出。

输入样例 复制

4 16

输出样例 复制

3 1 2 4

数据范围与提示

n <= 12, sum <= 12345.

分类标签