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