提交时间:2022-08-01 09:46:08
运行 ID: 55983
#include<bits/stdc++.h> using namespace std; int main(){ int a[30100],b; while(cin>>b){ if(b==0){ return 0; } else{ int c=0,p=0; int d[30100]; while(b>0){ a[c]=b%2; b=b/2; c++; } for(int i=0;i<c;i++){ if(a[i]==0) p++; else break; } for(int i=1;i<=p;i++){ d[i]==0; } d[0]=1; int ans=0; for(int i=p;i>=0;i--){ ans=ans+d[i]*pow(2,p-i); } cout<<ans<<endl; } } return 0; }