1576.
教主的集合序列
时间限制 1000 ms
内存限制 128 MB
定义集合$S_1$为$1$到$n$之间所有正整数组成的集合,即$S_1=\{1,2,3…n\}$。当$k>1$时,$S_k$为集合$S\_{k-1}$中任意两个不相同数之和的集合。
例如,当$n=3$时:
$S_1=\{1,2,3\}$
$S_2=\{3,4,5\}$
$S_3=\{7,8,9\}$
$S_4=\{15,16,17\}$
……
现将每个集合中所有元素取出,集合$S_i$的数放在集合$S\_{i+1}$的数的前面,同一个集合数从小到大排序,这样得到一个序列$L$。例如,当$n=3$时,$L=1,2,3,3,4,5,7,8,9,15,16,17……$
那么,现对于给定的$n$和$k$,求$L$中第$k$个数。
输入数据
输出数据
输出包含$1$行,为一个正整数,即序列$L$中第$k$个数。若这个数不存在,则输出$-1$。
样例说明
当$n=4$时,序列$L=1,2,3,4,3,4,5,6,7,7……$
所以序列中第$6$个数为$4$。