网站页面
当前课程
成员
General
主题 1
主题 2
主题 4
主题 5
主题 6
主题 7
主题 8
主题 9
主题 10
主题 11
主题 12
主题 13
主题 14
主题 15
主题 16
主题 17
主题 18
主题 19
主题 20
排序集合
成绩 | 0 | 开启时间 | 2013年02月21日 星期四 23:02 |
折扣 | 0.8 | 折扣时间 | 2013年02月28日 星期四 23:02 |
允许迟交 | 是 | 关闭时间 | 2013年02月28日 星期四 23:02 |
输入文件 | sort.in | 输出文件 | sort.out |
题目描述
对于集合 N={1 , 2 ,…, n} 的子集,定义一个称之为“小于”的关系:
设 S 1 ={X 1 , X 2 ,…, X i } , (x 1 <x 2 < … <X i ) ,
S 2 ={Y 1 , Y 2 ,…, Y j } , (Y 1 <Y 2 < … <Y i ) ,
如果存在一个 k , (O ≤ k ≤ min{i , j)) ,使得 X 1 =Y 1 ,…, X k =Y k ,且 k=i 或 X (k+1) <Y (k+1) ,则称 S 1 “小于” S 2 。
你的任务是,对于任意的 n(n ≤ 31) 及 k(k<2^n ) ,求出第 k 小的子集。
【输入】
输入文件仅一行,包含两个用空格隔开的自然数, n 和 k 。
【输出】
输出文件仅一行,是该子集的元素,由小到大排列。空集输出 0 。
【样例】
sort.in
3 4
sort.out
1 2 3