关注
第二题你这个代码如果在自己电脑上,会递归深度超出,所以我把数据范围缩小到1-100了,后面附上测试代码和结果:
import time
import random
import math
from collections import defaultdict
def solution(n,input):
result = 0
dp_dict = defaultdict(int)
dp_dict[1] = 0
input_max = max(input)
for number in range(2,input_max):
if number not in dp_dict:
dp_dict[number] = dp_dict[number-1] + 1
if number + 1 in dp_dict:
dp_dict[number+1] = min(dp_dict[number+1],dp_dict[number]+1)
else:
dp_dict[number+1] = dp_dict[number] + 1
for second in range(2,min(number+1,int(math.sqrt(input_max))+1)):
if number * second > input_max:
break
if number * second in dp_dict:
dp_dict[number*second] = min(dp_dict[number*second], dp_dict[number]+dp_dict[second]+1)
else:
dp_dict[number*second] = dp_dict[number]+dp_dict[second]+1
for number in input:
result += dp_dict[number]
return result
查看原帖
点赞 6
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
- 1... 字节后端秋招复活赛*n2.9W
- 2... 🎉创作红榜丨给大家一些秋招邪修的小震撼!5544
- 3... 准备18个月,26后端秋招收割计划现状5455
- 4... 男朋友工作作息和pdd一样4685
- 5... 招银网络一面,面点国企尝尝鲜4386
- 6... 别再说“没有问题了”,这些面试反问帮我拿下3个offer4297
- 7... 实习的偷感真的太强了3776
- 8... 还以为美团打电话要oc,没想到啊......2819
- 9... 胃不舒服,直接在工位上yue出声了2806
- 10... 2天速通百度timeline9.8一面,面完秒约二面9.9二面,面完秒oc#27届实习#2509
正在热议
更多
# 哪些公司对双非友好 #
26135次浏览 233人参与
# 面试反问你会问什么 #
18196次浏览 284人参与
# 小红书校招直播来了 #
7580次浏览 52人参与
# 刚入职就____,这样正常吗? #
25774次浏览 224人参与
# 实习返校后,你的精神状态是__? #
13702次浏览 77人参与
# 你是怎么和mt相处的? #
17855次浏览 119人参与
# 开立医疗秋招 #
49789次浏览 217人参与
# 你朋友圈最大的人脉是谁? #
9154次浏览 83人参与
# 最难的技术面是哪家公司? #
37308次浏览 654人参与
# 关于求职,我有X不投 #
14898次浏览 78人参与
# 秋招遇到的奇葩面试题 #
24902次浏览 122人参与
# 这个工作能去吗 #
6380次浏览 61人参与
# 实习必须要去大厂吗? #
120937次浏览 1466人参与
# 上班苦还是上学苦呢? #
265854次浏览 1672人参与
# 招银网络求职进展汇总 #
129049次浏览 846人参与
# 找工作前vs找工作后的心路变化 #
16049次浏览 148人参与
# 机械人,你被简历秒挂的企业有哪些? #
53814次浏览 319人参与
# 考研可以缓解求职焦虑吗 #
62227次浏览 491人参与
# 4399求职进展汇总 #
26046次浏览 153人参与
# kpi面有什么特征 #
69120次浏览 448人参与
# 周六调休日,你打算几点下班? #
21736次浏览 109人参与
# 被AI治愈的瞬间 #
72317次浏览 653人参与