有赞测试开发AC代码
不知道为啥选择题那么多C语言,都不会。。。
编程题还是比较简单的~
# 有赞第一题 # 求正整数的质因数,可以重复计数 # 12= 2*2*3, 质因数个数为3 n = int(input()) def is_prime(r): if r == 2: return True for i in range(2,r//2+1): if r%i == 0: return False return True r = 2 count = 0 judge = True while r<=n: if judge and n%r == 0: n = n//r count += 1 else: r += 1 judge = is_prime(r) print(count) # 有赞第二题 # 跳台阶, 每次可以跳1~n个,求方案数 n = int(input()) # dp[n] = dp[n-1]+dp[n-2]+ ....dp[0]+1 # dp[n-1] = dp[n-2],dp[n-3].....dp[0]+1 # dp[n] = 2*dp[n-1] dp = [1 for i in range(n)] for i in range(1,n): dp[i] = dp[i-1]*2 print(dp[-1]) # 有赞第三题 # 一个数可以表示成多个数之和,求这些数的乘积最大值 # 10 , 3*3*4 = 36 n = int(input()) dp = [0 for i in range(n+1)] dp[1] = 1 # 不能再分了,再分就是0了 for i in range(2,n+1): for j in range(1,i//2+1): x = max(dp[j],j) y = max(dp[i-j],i-j) print(x,y) dp[i] = max(dp[i],x*y) print(dp[-1])#有赞##笔试题目#