在下面的程序中,使用整数表示一种组合。整数二进制表示的某一位为1,表示该位对应的数被选中,反之
为0表示未选中。例如,从0 - 5这6个数中选出3个,则0b111000代表选中3, 4, 5三个数,0b011001代表
选中0, 3, 4三个数。zuhe_next函数按组合对应的整数由大到小的顺序,求出组合c的下一个组合。横线处可
以填入的是( )。
int intlow2(int c) { return ________; // 在此处填入选项}int zuhe_next_incur(int c, int n, int l) { if (n == 1) return c; if ((c & (1 << l)) == 0) { int d = intlow2(c); c = (c & ~d); c = (c | (d >> 1)); } else { c = (c & ~(1 << l)); c = zuhe_next_incur(c, n - 1, l + 1); int d = intlow2(c); c = (c | (d >> 1)); } return c;}// 从n个数中选m个,当前组合为cint zuhe_next(int c, int n, int m) { return zuhe_next_incur(c, n, 0);}