关注
第四题
其实是先看的第五题,回来看了半天没思路,想了想肯定会有方案数为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
相关推荐
牛客热帖
更多
正在热议
更多
# 你觉得大几开始实习最合适? #
9189次浏览 89人参与
# 实习生的蛐蛐区 #
921265次浏览 4697人参与
# 厦门银行科技岗值不值得投 #
12739次浏览 306人参与
# 你见过哪些招聘隐形歧视? #
6465次浏览 64人参与
# 毕业季等于分手季吗 #
59230次浏览 680人参与
# 面试被问到不会的问题,你怎么应对? #
8503次浏览 68人参与
# 开放七大实习专项,百度暑期实习值得冲吗 #
28374次浏览 527人参与
# 面试吐槽bot #
182114次浏览 865人参与
# 好好告别我的学生时代 #
138083次浏览 1554人参与
# 25届秋招公司红黑榜 #
328656次浏览 1292人参与
# 小厂实习有必要去吗 #
87334次浏览 417人参与
# 租房前辈的忠告 #
380263次浏览 7491人参与
# 你都用vibe coding做过什么? #
3685次浏览 156人参与
# 做完笔试后你收到面试了吗? #
8902次浏览 81人参与
# Vibe Coding 会干掉初级岗位吗? #
7537次浏览 128人参与
# 实习转正进行时 #
168319次浏览 1064人参与
# AI Coding实战技巧 #
2775次浏览 75人参与
# 你现在一天AI几次? #
2585次浏览 57人参与
# 牛友の3月总结 #
12993次浏览 120人参与
# 如果人生可以debug你会改哪一行? #
3432次浏览 73人参与
# 大厂实习和小厂实习最大的区别是什么? #
16965次浏览 111人参与
# 百度工作体验 #
319645次浏览 2239人参与
查看18道真题和解析