试题 基础练习 分解质因数
资源限制
时间限制:1.0s 内存限制:512.0MB
问题描述
求出区间[a,b]中所有整数的质因数分解。
输入格式
输入两个整数a,b。
输出格式
每行输出一个数的分解,形如k=a1a2a3…(a1<=a2<=a3…,k也是从小到大的)(具体可看样例)
样例输入
3 10
样例输出
3=3
4=22
5=5
6=23
7=7
8=222
9=33
10=25
分析:
分解质因数大家都知道用"短除法",我们拿36这个数来举例子
36/2=18 到这之后更新36为18 18/2 = 9 再更新18为9 9/3 = 3 3是质数,不用更新了,到此结束。
假如是7,直接是质数,那就是7=7
值得一提的是,我们把每次质因数分解的结果存放到一个字典result里面,假如我们分解3到40之间的式子,我们分解到36之后,进行一次运算变成18之后就可以直接把前面的结果从字典里面拿过来。
AC代码: