从鹏哥那里盗来的,不错啊。
代码中的i表示的是所有s中为0,i中也为0,s中为1,i中为0或者1的情况。
也就是说i表示的是s状态的所有子状态。
int main() { int s; while(cin>>s) { print(s); for(int i=s; i>=0; i=(i>0?(i-1)&s:-1)) { print(i); } } return 0; }
从鹏哥那里盗来的,不错啊。
代码中的i表示的是所有s中为0,i中也为0,s中为1,i中为0或者1的情况。
也就是说i表示的是s状态的所有子状态。
int main() { int s; while(cin>>s) { print(s); for(int i=s; i>=0; i=(i>0?(i-1)&s:-1)) { print(i); } } return 0; }