猿辅导笔试0327 第二题
我觉得我的代码没问题啊。。本地测了多组都过了,但提交一直0.0%,大佬们看看有啥问题。。
import sys N = int(sys.stdin.readline().strip()) line = sys.stdin.readline().strip() arr = list(map(int, line.split())) k = int(sys.stdin.readline().strip()) if N == 1: if arr[0] <= k: print('1') else: print('0') else: rec = [arr[0]] res = 0 if arr[0] <= k: res += 1 tmp = arr[0] for i in range(1, len(arr)): for j in rec[-i:]: tmp = j | arr[i] rec.append(tmp) if tmp <= k: res += 1 rec.append(arr[i]) if arr[i] <= k: res += 1 res = int(res % (10e9+7)) print(res) # 1 2 3 4 # (1) (1,2)(2) (1,2,3)(2,3)(3) (1,2,3,4)(2,3,4)(4) # 依次增添元素,rec中保存每个数组片段的或值,遇到一个或值<=阈值k就计数加一