关注
第四题
其实是先看的第五题,回来看了半天没思路,想了想肯定会有方案数为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 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 如何准备秋招 #
10205次浏览 182人参与
# 软开人,秋招你打算投哪些公司呢 #
100726次浏览 944人参与
# 现代汽车前瞻技术研发急速编程挑战赛 #
22082次浏览 185人参与
# 你觉得实习能学到东西吗 #
14703次浏览 354人参与
# 秋招什么时候开投比较合适? #
6118次浏览 143人参与
# 实习,不懂就问 #
26856次浏览 433人参与
# 每个月的工资都是怎么分配的? #
13557次浏览 307人参与
# 你觉得实习只能是打杂吗? #
192224次浏览 1223人参与
# 你们公司几号发工资 #
18851次浏览 128人参与
# 你觉得现在还能进互联网吗? #
4338次浏览 98人参与
# 非技术岗简历怎么写 #
216686次浏览 2918人参与
# 预测一下26届秋招形势 #
22844次浏览 225人参与
# 技术岗笔试题求解 #
75396次浏览 974人参与
# 你最近一次加班是什么时候? #
67757次浏览 346人参与
# 高考出分的那一天,我__ #
15545次浏览 263人参与
# 聊聊你的职场新体验 #
161277次浏览 1391人参与
# 打工人的精神状态 #
53804次浏览 985人参与
# 大家实习每天都在干啥 #
82773次浏览 505人参与
# 米哈游工作体验 #
17662次浏览 116人参与
# 来聊聊你认为的薪资天花板是哪家? #
30803次浏览 174人参与
# 机械实习一天多少钱合适? #
28862次浏览 176人参与