比赛场次 35
比赛名称 HAOI2009 模拟试题4
比赛状态 已结束比赛成绩
开始时间 2009-04-24 08:15:00
结束时间 2009-04-24 11:30:00
开放分组 全部用户
注释介绍
题目名称 排序集合
输入输出 sort.in/out
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试点数 10 简单对比
用户 结果 时间 内存 得分
Gravatarzqzas AAAAAAAAAA 0.000 s 0.00 MiB 100
Gravatarlc AAAAAAAAAA 0.000 s 0.00 MiB 100
GravatarLXYXYNT AAAAAAAAAA 0.000 s 0.00 MiB 100
Gravatarceeji AAAAAAAAAA 0.000 s 0.00 MiB 100
Gravatar0彼岸0 AAAAAAAAAA 0.000 s 0.00 MiB 100
Gravatar苏轼 AAAAAAAAAA 0.000 s 0.00 MiB 100
Gravatarmaxiem AAAAAATTTA 0.000 s 0.00 MiB 70
Gravatar.Xmz AAAAAATTTA 0.000 s 0.00 MiB 70
GravatarCockRoachEr ATWTTTTTTA 0.000 s 0.00 MiB 20
GravatarBYVoid WWWWWWWWWA 0.000 s 0.00 MiB 10

排序集合

★★   输入文件:sort.in   输出文件:sort.out   简单对比
时间限制:1 s   内存限制:128 MiB

题目描述


对于集合 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