编写一个函数,确定需要改变几个位,才能将整数A转变成整数B。
给定两个整数int A,int B。请返回需要改变的数位个数。
测试样例:
10,5
返回:4
#include <iostream>
using namespace std;
int mntranscnt(int m,int n){
int t=m^n;
int count=0;
while(t!=0){
count++;
t=t&(t-1);
}
return count;
}
int main(){
int n,m;
cin>>n>>m;
cout<<mntranscnt(m,n)<<endl;
return 0;
}