任何人都可以建议我对N个数字的成对运算结果的O(n)算法,例如let 和数字be 和ORXORN=35,79
5 ^ 7 = 2, 7 ^ 9 = 14, 9 ^ 5 = 12
2|14|12 = 14
Run Code Online (Sandbox Code Playgroud)
^ for XOR操作和| for OR操作
如何找到一个pascal三角形的给定行号中的数字总数,该三角形可以被一个素数整除,其中给出行号和素数我在python中使用以下代码
def factorial(x):
result = 1
for i in xrange(1,x+1):
result *= i
return result
def combination(n,r):
return factorial(n)/(factorial(n-r)*factorial(r))
p = input()
cnt = 0
for i in range(0,n+1):
if((combination(n,i)%p)==0):
cnt += 1
print cnt
Run Code Online (Sandbox Code Playgroud)
但是给定的代码需要很长时间才能获得大数字.你能告诉我一个更好的算法吗?