#包括#包括#包括使用命名空间std;#定义最大值(1LL<<34)位组*seen=0;long-long避免(long long x,long long-i){长-长v=0;长-长b=1;而(i){如果(x&1){}其他{如果(i&1){v+=b;}i/=2;}x/=2;b*=2;}返回v;}long-long其他(long-long-p){see->集合(p);for(长i=1;;i++){long-long v=避免(p,i);如果(v>=最大值){退出(0);}if(!seen->测试(v)){返回v;}}}整型main(){seen=新位集;长-长p=0;for(long long n=0;n<=10000;n++){long-long v=其他(v);cout<<n<<''<p+v<<endl;p=v;}删除看到的;seen=0;返回0;}