关注
第一题,等式两边同乘以最大公约数之后,设三个不相同的数之后最小的数为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为区间最大值的最高位数。
查看原帖
点赞 评论
相关推荐
想当offer收割机...:当你成功的时候,所有人都会为你的一切古怪找理由,我特别认同这句话,往日之事如东流水,成功就是最好的解释权。
点赞 评论 收藏
分享
点赞 评论 收藏
分享
11-03 14:26
武汉设计工程学院 运营 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 我来点评面试官 #
6265次浏览 52人参与
# 实习教会我的事 #
37097次浏览 320人参与
# 京东开奖 #
441975次浏览 2489人参与
# 今年秋招是回暖还是遇冷 #
14341次浏览 88人参与
# 如果不考虑收入,你最想做什么工作? #
36463次浏览 225人参与
# 你实习是赚钱了还是亏钱了? #
15495次浏览 152人参与
# 商战,最累的是我们 #
24733次浏览 91人参与
# 京东工作体验 #
17274次浏览 104人参与
# 同bg的你秋招战况如何? #
163738次浏览 953人参与
# 教师节,你送祝福了吗 #
9586次浏览 71人参与
# 用一句话形容你的团队氛围 #
9366次浏览 115人参与
# 秋招开始捡漏了吗 #
52754次浏览 361人参与
# 三一重工求职进展汇总 #
21653次浏览 82人参与
# 找工作八股要背到什么程度? #
8614次浏览 143人参与
# 考研人,我有话说 #
150503次浏览 1199人参与
# 硬件人,你被哪些公司给挂了 #
69000次浏览 932人参与
# 58同城求职进展汇总 #
38915次浏览 260人参与
# 你找工作是从容有余 or 匆忙滚爬? #
5529次浏览 64人参与
# 华为存储OD事变 #
144170次浏览 724人参与
# 上班后,才发现大学__白学了 #
8967次浏览 57人参与
# 大学生该如何认清当下的就业环境? #
107885次浏览 636人参与


