Wen1009774901 2022-06-01 10:45 采纳率: 100%
浏览 18
已结题

python栈数据结构分解质因数

问题遇到的现象和发生背景

python栈数据结构分解质因数,如题

怎么用栈的数据结构分解质因数

我想要达到的结果

样例输入
100
输出
5522

  • 写回答

1条回答 默认 最新

  • 不会长胖的斜杠 后端领域新星创作者 2022-06-01 10:51
    关注
    import math
    class Stack:    
         #初始化
         def __init__(self):
             self.items = []
         #判断是否为空
         def isEmpty(self):
             return self.items == []
         #进栈
         def push(self, item):
             self.items.append(item)
         #出栈
         def pop(self):
             return self.items.pop()
         #查看元素
         def peek(self):
             return self.items[len(self.items)-1]
         #返回长度
         def size(self):
             return len(self.items)
     
    def is_prime(x):
        if x == 2:
            return True
        for i in range(2, int(math.sqrt(x)) + 1):
            if x % i == 0:
                return False
        return True
        
    if __name__ == '__main__':
        s1 = Stack()
        num = int(input())
        #质数进栈
        while not is_prime(num):
            for i in range(2, int(math.sqrt(num)) + 1):
                if (num % i == 0 and is_prime(i)):
                    s1.push(i)
                    num //= i
                    break
        s1.push(num)
            
        while not s1.isEmpty():
            print(s1.pop(),end='')
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月9日
  • 已采纳回答 6月1日
  • 创建了问题 6月1日

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度