春招第二题

vivo2020春招第二题,不是很难的题目,笔试时有些细节没处理好,白白浪费时间,说到底还是自己太菜,还是总结整理下吧
题目:正整数n,m(m>9), 找到最小正整数m使得m的各位(个十百千...)相乘等于n。比如n=36,m=49
我的想法:现将整数n拆分,36=2*2*3*3,
将拆分后的最小质数因子合并以减小位数,2*2=4,3*3=9
最后合并49
由于当时没有得到系统的测试,也不知道如下代码是否100%正确,望大佬指正。
def solution(n):
    # 将整数n拆分成2~9内的最小质数因子,如36=2*2*3*3
    divide=[]
    while n >= 2:
        num=n # 用作参考
        for i in range(2, 10):
            if n % i == 0: 
                # 10以内的最小质数因子相乘合并(为了减少位数)
                if len(divide) and i*divide[-1]<10: 
                    divide.append(divide.pop(-1)*i)
                else:
                    divide.append(i)
                n=n / i
                break
        if n == num and n>=10: # 如果存在大于10的质数因子,那么就不符合
            return -1
    # 将各因子形成一个整数
    ans=0
    divide.sort()
    for i in divide:
        ans=(ans+i)*10
    return int(ans / 10)


#vivo2020春招##vivo##笔试题目#
全部评论
你想得太复杂了…… 直接从9开始往下除就行……两行半就够。
点赞 回复 分享
发布于 2020-03-09 13:48

相关推荐

03-17 23:54
黑龙江大学 Java
来个白菜也好啊qaq:可以的,大厂有的缺打手
点赞 评论 收藏
分享
03-17 16:55
已编辑
广东工业大学 Web前端
他们都管我叫八股王:个人技能可以放最下面,项目描述点可以不用这么多,把可以被狠狠拷打的点尽量弄的再显眼一些,自己讲不出来的也尽量不要写
听劝,我这个简历该怎么改...
点赞 评论 收藏
分享
评论
点赞
4
分享

创作者周榜

更多
正在热议
更多
# 长得好看会提高面试通过率吗? #
4018次浏览 46人参与
# 离家近房租贵VS离家远但房租低,怎么选 #
16907次浏览 137人参与
# 巨人网络春招 #
11527次浏览 224人参与
# 春招至今,你的战绩如何? #
15816次浏览 145人参与
# 你的实习产出是真实的还是包装的? #
3098次浏览 53人参与
# 沪漂/北漂你觉得哪个更苦? #
1553次浏览 41人参与
# MiniMax求职进展汇总 #
25165次浏览 322人参与
# HR最不可信的一句话是__ #
1091次浏览 32人参与
# AI面会问哪些问题? #
946次浏览 23人参与
# 你做过最难的笔试是哪家公司 #
1247次浏览 22人参与
# AI时代,哪个岗位还有“活路” #
2853次浏览 51人参与
# 不考虑薪资和职业,你最想做什么工作呢? #
152905次浏览 889人参与
# 军工所铁饭碗 vs 互联网高薪资,你会选谁 #
8021次浏览 43人参与
# XX请雇我工作 #
51155次浏览 171人参与
# 简历第一个项目做什么 #
32148次浏览 361人参与
# 简历中的项目经历要怎么写? #
311051次浏览 4265人参与
# 投格力的你,拿到offer了吗? #
178339次浏览 891人参与
# 你最满意的offer薪资是哪家公司? #
76981次浏览 375人参与
# 当下环境,你会继续卷互联网,还是看其他行业机会 #
187605次浏览 1123人参与
# AI时代,哪些岗位最容易被淘汰 #
64760次浏览 890人参与
# 如果重来一次你还会读研吗 #
230018次浏览 2011人参与
# 正在春招的你,也参与了去年秋招吗? #
364353次浏览 2642人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务