1 /*************************************************************************
2 > File Name: Gray.cpp
3 > Author: wangzhili
4 > Mail: wangstdio.h@gmail.com
5 > Created Time: 2014年03月17日 星期一 21时23分04秒
6 ************************************************************************/
7 #include<iostream>
8 #include<vector>
9 using namespace std;
10 //求n位格雷码序列, Grey序列的第位i为 i xor (i >> 1);
11 vector<int> Gray_Create(int n){
12 vector<int> res;
13 res.clear();
14 for(int i = 0;i < (1 << n);i ++){
15 res.push_back(i^(i >> 1));
16 }
17 return res;
18 }
19
20 int main(){
21 int n;
22 while(cin >> n){
23 vector<int> ans = Gray_Create(n);
24 for(int i = 0;i < ans.size();i ++){
25 cout << ans.at(i) << endl;
26 }
27 }
28 return 0;
29 }
30