关注
第四题
其实是先看的第五题,回来看了半天没思路,想了想肯定会有方案数为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 评论
相关推荐
今天 09:03
南开日新国际学校 研发工程师 点赞 评论 收藏
分享
牛客热帖
正在热议
# 25届秋招总结 #
315371次浏览 2893人参与
# 上班苦还是上学苦呢? #
66037次浏览 547人参与
# 阿里云管培生offer #
35051次浏览 415人参与
# 地方国企笔面经互助 #
4192次浏览 12人参与
# 如何一边实习一边秋招 #
994320次浏览 12649人参与
# 选完offer后,你后悔学本专业吗 #
20976次浏览 151人参与
# 百度开奖 #
175170次浏览 1099人参与
# 如果有时光机,你最想去到哪个年纪? #
19317次浏览 294人参与
# 我的实习求职记录 #
6063818次浏览 83494人参与
# 招聘要求与实际实习内容不符怎么办 #
10533次浏览 275人参与
# 学历or实习经历,哪个更重要 #
52574次浏览 413人参与
# 海康威视求职进展汇总 #
399876次浏览 3406人参与
# 正在实习的你,几点下班 #
52694次浏览 394人参与
# 国央企薪资爆料 #
10335次浏览 76人参与
# 租房前辈的忠告 #
109183次浏览 5229人参与
# 米哈游求职进展汇总 #
176628次浏览 1463人参与
# 得物求职进展汇总 #
66975次浏览 686人参与
# 美的求职进展汇总 #
206948次浏览 1619人参与
# 2023毕业生求职有问必答 #
120871次浏览 1302人参与
# 软开人,秋招你打算投哪些公司呢 #
43464次浏览 543人参与
# 机械制造秋招总结 #
30407次浏览 354人参与
# 如果不工作真的会快乐吗 #
60127次浏览 528人参与