hzCPPOJ

USACO3.2.2_Stringsobits 01串

时间限制:  1 s      内存限制:   128 MB
提交:3     正确:3     分值:99

题目描述

考虑排好序的N(N<=31)位二进制数。

他们是排列好的,而且包含所有长度为N且这个二进制数中1的位数的个数小于等于L(L<=N)的数。

你的任务是输出第i(1<=i<=长度为N的二进制数的个数)小的(注:题目这里表述不清,实际是,从最小的往大的数,数到第i个符合条件的,这个意思),长度为N,且1的位数的个数小于等于L的那个二进制数。

(例:100101中,N=6,含有位数为1的个数为3)。

输入

共一行,用空格分开的三个整数N,L,i。

输出

共一行,输出满足条件的第i小的二进制数。

样例

样例输入:
5 3 19
样例输出:
10011

提交人

AmberXie

来源/分类