题意:求满足条件GCD(N,M) = N XOR M的M的个数
sol:和uva那题挺像的。若gcd(a,b)=a xor b=c,则b=a-c
暴力枚举N的所有约数K,令M=NxorK,再判断gcd(N,M)是不是等于K。
暴力枚举约数时传统方法是O(N)的,会完蛋
有个O(sqrt(N))的方法:
性质:若n%i==0,则有n%(n/i)=0
时间: 2024-11-04 12:51:25
题意:求满足条件GCD(N,M) = N XOR M的M的个数
sol:和uva那题挺像的。若gcd(a,b)=a xor b=c,则b=a-c
暴力枚举N的所有约数K,令M=NxorK,再判断gcd(N,M)是不是等于K。
暴力枚举约数时传统方法是O(N)的,会完蛋
有个O(sqrt(N))的方法:
性质:若n%i==0,则有n%(n/i)=0