关注
第四题
其实是先看的第五题,回来看了半天没思路,想了想肯定会有方案数为0的情况,结果能过45%...
n, k = map(int, input().split())
a = [0] + list(map(int, input().split()))
1. dp[i][j] 表示枚举到数组前i位,删了j个数的方案数
2. 正难则反,用总方案数C(n, k)减去删除后不为倍数的方案, 算贡献
dp = [[0] * (k + 1) for _ in range(n + 1)]
MOD = 10 ** 9 + 7
now = 0
for i in range(n):
ok = 0
for j in range(n):
if i == j:
continue
else:
temp = math.gcd(a[i], a[j])
if temp == a[i] or temp == a[j]:
ok = 1
break
if ok:
if now < k:
dp[i][now + 1] *= dp[i - 1]
else:
if now < k:
dp[i][now + 1] = 0
print(dp[n][k])
注释是赛时的思路,但都没推出来,整份代码其实就是变着花样的print(0)
第五题
看着很有思路,一通乱敲,过样例了!好!提交!0%!遂怒,猜了个n/2看看能过多少,结果全过了,你这数据比上午的东子都水啊。。。
# 好像代码没存,总之硬模拟了一下
print(n // 2)
2
相关推荐
牛客热帖
更多
正在热议
更多
# 三月的小目标 #
59952次浏览 866人参与
# 滴滴笔试 #
35810次浏览 204人参与
# 美团笔试 #
704259次浏览 4678人参与
# AI岗位暴涨12倍,你会转AI赛道吗? #
6494次浏览 118人参与
# 你听到的“最没用”的秋招建议 #
53788次浏览 326人参与
# 米哈游笔试 #
559183次浏览 1109人参与
# 金三银四,你的春招进行到哪个阶段了? #
18911次浏览 256人参与
# 你上一次加班是什么时候? #
138362次浏览 769人参与
# vivo笔试 #
13320次浏览 124人参与
# 小米编程考试 #
32419次浏览 153人参与
# 今天你投了哪些公司? #
183472次浏览 3120人参与
# 27届实习投递记录 #
1233次浏览 24人参与
# 秋招你经历过哪些无语的事 #
104396次浏览 600人参与
# 字节7000实习来了,你投了吗? #
5823次浏览 26人参与
# 职场上哪些行为很加分? #
337651次浏览 3736人参与
# 你感受到金三银四了嘛? #
83482次浏览 678人参与
# AI项目实战 #
8182次浏览 402人参与
# 虽然0面试,但今天___,夸夸自己 #
11138次浏览 196人参与
# 实习学不到东西正常吗? #
9670次浏览 209人参与
# 实习进度记录 #
1213752次浏览 11766人参与