鱼C论坛

 找回密码
 立即注册
查看: 2179|回复: 1

题目132:求一个非常大的循环整数的前40个质数因子

[复制链接]
发表于 2016-8-23 17:28:42 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
Large repunit factors

A number consisting entirely of ones is called a repunit. We shall define R(k) to be a repunit of length k.

For example, R(10) = 1111111111 = 11×41×271×9091, and the sum of these prime factors is 9414.

Find the sum of the first forty prime factors of R(109).


题目:

一个全部由 1 组成的数字叫做循环整数。定义 R(k) 为一个长度为 k 的循环整数。

例如, R(10) = 1111111111 = 11×41×271×9091,这几个质数因子之和为 9414。

求 R(109) 的前 40 个质数因子之和。

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-7-19 14:45:18 | 显示全部楼层
"""
R(k) = (10**k-1)/9
if R(k) mod p == 0, then 10**k mod 9p == 1.
"""
primes=[True]*1000000
primes[:2]=[False]*2
for i,prime in enumerate(primes):
        if prime:
                for j in range(i*i, 1000000, i):
                        primes[j]=False
count = 0
s = 0
for k,trueprime in enumerate(primes):
        if trueprime:
                if pow(10,10**9,9*k) == 1:
                        count += 1
                        s += k
        if count == 40:
                print(s)
                break
843296
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-7-2 22:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表