Project Euler Problem 5-Smallest multiple
2024-09-01 00:52:43
对每个数字分解素因子,最后对每个素因子去其最大的指数,然后把不同素因子的最大指数次幂相乘,得到的就是最小公倍数
python不熟练,代码比较挫
mp = {}
def process(n):
i = 2
while i*i <= n:
cnt = 0
if n%i == 0:
while n%i == 0:
cnt += 1
n /= i
if i in mp:
mp[i] = max(mp[i], cnt)
else:
mp[i] = cnt
i += 1
if n > 1:
if n in mp:
mp[n] = max(mp[n], 1)
else:
mp[n] = 1
for i in range(2,21):
process(i)
res = 1
for x in mp:
res *= (x**mp[x])
print res
最新文章
- Android常用组件之ListView
- KNN算法——python实现
- linux 多个ssh key 登录远程主机
- UVALive 3211 Now or later(2-SAT,二分,Kosaraju)
- [javascript]event属性
- 单机Hadoop搭建
- 汉字转全拼音函数优化方案(SQLServer),值得你看看
- Nginx集群之WCF分布式消息队列
- Android热修复技术选型——三大流派解析
- 安装nova后解决登录没账号问题
- myeclipse中的HTML页面在浏览器中显示为乱码
- go 并发编程(1)
- dedecms中arclist标签做分页以及分页点击模块样式错乱问题
- JSJ—案例谈面向对象
- (转)Spring Boot 2 (七):Spring Boot 如何解决项目启动时初始化资源
- 关于JS动画和CSS3动画的性能差异
- Hadoop中ssh+IP、ssh+别名免秘钥登录配置
- Java 中 byte、byte 数组和 int、long 之间的转换
- HTTPS 数字签名 证书
- __metaclass__ 实现单列模式