题目描述
已知正整数 n n n 是两个不同的质数的乘积,试求出两者中较大的那个质数。
输入格式
输入一个正整数 n n n。
输出格式
输出一个正整数 p p p,即较大的那个质数。
输入输出样例
输入
21
输出
7
说明/提示
1 ≤ n ≤ 2 × 1 0 9 1 \le n\le 2\times 10^9 1≤n≤2×109
NOIP 2012 普及组 第一题
方式
代码
python
class Solution:
@staticmethod
def oi_input():
"""从标准输入读取数据"""
num = int(input())
return num
@staticmethod
def oi_test():
"""提供测试数据"""
return 21
@staticmethod
def solution(num):
for i in range(2, num):
if num % i == 0:
print(num // i)
break
oi_input = Solution.oi_input
oi_test = Solution.oi_test
solution = Solution.solution
if __name__ == '__main__':
num = oi_test()
# num = oi_input()
solution(num)
流程图
寻找最小质因数 是 是 否 否 i < num? 初始化循环i=2 num % i == 0? 输出num//i 结束循环 i++ 开始 调用oi_input()/oi_test() 获取num值 循环结束未找到因数 结束