湖北省建设厅官方网站电话,成品人和精品人的区别在哪,互联网技术对人们工作生活的影响,做网站订金是多少题目描述
RSA加密算法在网络安全世界中无处不在#xff0c;它利用了极大整数因数分解的困难度#xff0c;数据越大#xff0c;安全系数越高#xff0c;给定一个32位正整数#xff0c;请对其进行因数分解#xff0c;找出是哪两个素数的乘积。
输入描述
1. 一个正整数nu… 题目描述
RSA加密算法在网络安全世界中无处不在它利用了极大整数因数分解的困难度数据越大安全系数越高给定一个32位正整数请对其进行因数分解找出是哪两个素数的乘积。
输入描述
1. 一个正整数num 2. 0 num 2147483647
输出描述
1. 如果成功找到以单个空格分割从小到大输出两个素数分解失败请输出-1 -1
示例一
输入
15
输出
3 5 代码实现
# coding:utf-8
# 素数之积
import mathclass Solution:def primeProdcut(self, n):s int(math.sqrt(n))res flag Falsefor i in range(2, s 1):if n % i 0:if self.is_prime(i) and self.is_prime(n // i):flag Trueif i n // i:res f{i} {n // i}else:res f{n // i} {n}if flag:return reselse:return -1 -1def is_prime(self, n):if n 2:return Falsefor i in range(2, int(math.sqrt(n)) 1):if n % i 0:return Falsereturn Trueif __name__ __main__:s int(input(input:))solution Solution()print(solution.primeProdcut(s))