关注
第一题,等式两边同乘以最大公约数之后,设三个不相同的数之后最小的数为x,其取值范围为[0,「n/(3*k)],在此范围内循环,内循环开始先确定y={a*x + b}, a为大于1的自然数,b为小于x的自然数,且y的值满足大于x且z大于y且x+y+z = n/k,然后判断y与z是否互质。这个算法利用先验条件避免了三个数字相同但是顺序不同的情况,因为x,y,z是对称的。
第二题,利用逆推的思想,本题纯用数学推导,无任何编程思想。7由(8,1)(2,9),(7,0)(不分前后顺序,即pair(1,8)包括81和18)得到,得到两位数中所有的幸运数字,再根据两位数中的幸运数字逆推出三位数中的幸运数字,比如18,要想得到8必须要有8或者9(for i in [8,9]),8或9可能来自高位可能来自低位(for j in [0, 1])。例如,三位数经过计算相邻数之差的绝对值之后要得到18 ,则个位数或者十位数必须是8或者9才能得到(因为经过邻数之差的绝对值计算之后值总是非严格单调递减的),例如个位是9,则十位必须是1才能得到8,相应的百位必须是2才能得到1,得到一个三位幸运数219。最后得到10^N内所有的幸运数字数组,根据区间最小值确定数量,时间复杂度为O(N),N为区间最大值的最高位数。
查看原帖
点赞 评论
相关推荐
查看16道真题和解析 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 交出你的校招焚诀 #
5634次浏览 111人参与
# 机械人春招想让哪家公司来捞你? #
387011次浏览 3157人参与
# 神州信息求职进展汇总 #
2711次浏览 50人参与
# 实习生至暗时刻 #
11465次浏览 239人参与
# 哪些公司开暑期实习了? #
11659次浏览 103人参与
# 面试___岗的必刷题单 #
7427次浏览 141人参与
# 春招开局,你有保底offer吗? #
16958次浏览 167人参与
# 你经历过哪些AI幻觉? #
3310次浏览 86人参与
# AI面试问题分享 #
8884次浏览 190人参与
# 实习学到最有价值的工作习惯 #
62233次浏览 478人参与
# 三月的小目标 #
6285次浏览 123人参与
# 说说你知道的学历厂 #
384103次浏览 1361人参与
# 实习生的生存小技巧 #
4888次浏览 92人参与
# 你认为哪些项目算烂大街? #
84214次浏览 640人参与
# 找AI工作应该卷什么? #
2281次浏览 51人参与
# 实习吐槽大会 #
413173次浏览 2174人参与
# 小厂一定不能去吗? #
17933次浏览 145人参与
# 秋招的嫡长offer #
405945次浏览 2187人参与
# 一汽大众工作体验 #
14664次浏览 26人参与
# 字节开奖 #
129130次浏览 595人参与
# 如果校招重来我最想改变的是 #
379373次浏览 3234人参与