1 条题解

  • 0
    @ 2025-1-7 11:49:14

    C++ :

    #include<bits/stdc++.h>
    using namespace std;
    int n;
    int a[60],l;
    int a1[60],l1;
    int main(){
    	cin>>n;
    	int c=n;
    	while(c!=0){
    		a[++l]=c%2;
    		c/=2;
    	}
    	for(int i=1,j=l;i<j;i++,j--){
    		swap(a[i],a[j]);
    	}
    	n-=1;
    	c=n;
    	while(c!=0){
    		a1[++l1]=c%2;
    		c/=2;
    	}
    	if(l1<l)
    		a1[++l1]=0;
    	for(int i=1,j=l1;i<j;i++,j--){
    		swap(a1[i],a1[j]);
    	}
    	int ans=0;
    	for(int i=1;i<=l;i++){
    		if(a[i]!=a1[i])
    			++ans;
    	}
    	cout<<ans;
    }
    
    • 1

    信息

    ID
    1078
    时间
    1000ms
    内存
    256MiB
    难度
    (无)
    标签
    (无)
    递交数
    0
    已通过
    0
    上传者