欧拉函数求一个数倒数的循环节长度
来源:互联网 发布:犀牛软件安装教程 编辑:程序博客网 时间:2024/06/07 01:46
首先,费马小定理a与p互素,则a^(p-1)≡1(mod p)
对于一个素数p,取a=10,那么10^(p-1)≡1(mod p)
如果找到一个正整数e使得10^e/p-1/p为整数,那么e就是1/p的循环节(但不一定是最小的那个),由费马小定理知,在不大于p-1的正整数中,e是存在的!
这还意味着,1/p的第一个循环节正好就在小数点后面,是个纯循环小数.
p-1是个和数所以10^(p-1)-1可以进行因式分解分解成为(10^p1-1)(10^(p-1-p1)+.+1)具体就不写了,其中p1为p-1的因数,如果有一个比p-1小的e满足“10^e/p-1/p为整数”那么这个e一定是p的约数.
(重要)Δ引理:一个循环小数除以2,其循环节大小不变
证明:
1.每个循环节如果是偶数,显然不变
2.如果是奇数,可以将本循环节最后的那个奇数码拿出一个1给后一个循环节,这样新循环节就又是偶数了,不过这个循环节是有重合的,比如0.45454545...就变成0.44+0.0144+0.00144...前面虽然多了些不是循环节的部分,不过循环节部分为数不受影响.
2008=2*2*2*251,251是素数,这样,我们只要求得1/251的循环节长度就好(除以2三次就是1/2008)
根据最上面的那部分10^250≡1(mod 251),如果有更小的e满足10^e≡1(mod 251),那么e是250的约数,250的约数有2,5,10,25,50,250
还有,同余式可以乘的,就是如果a≡c(mod m),b≡d(mod m) 则ab≡cd(mod m)
10^3≡-4(mod 251) 所以
10^5≡-400≡102(mod 251) 10^5不满足要求
10^10≡10404≡113(mod 251) 10^10不满足要求
10^20≡12769≡-32(mod 251) 10^20不满足要求
10^25≡-3264≡-1(mod 251) 10^25不满足要求
10^50≡1(mod 251) 10^50满足要求
所以循环节的长度就是50
2008=2^3×251
φ(251)=250
对于一个素数p,取a=10,那么10^(p-1)≡1(mod p)
如果找到一个正整数e使得10^e/p-1/p为整数,那么e就是1/p的循环节(但不一定是最小的那个),由费马小定理知,在不大于p-1的正整数中,e是存在的!
这还意味着,1/p的第一个循环节正好就在小数点后面,是个纯循环小数.
p-1是个和数所以10^(p-1)-1可以进行因式分解分解成为(10^p1-1)(10^(p-1-p1)+.+1)具体就不写了,其中p1为p-1的因数,如果有一个比p-1小的e满足“10^e/p-1/p为整数”那么这个e一定是p的约数.
(重要)Δ引理:一个循环小数除以2,其循环节大小不变
证明:
1.每个循环节如果是偶数,显然不变
2.如果是奇数,可以将本循环节最后的那个奇数码拿出一个1给后一个循环节,这样新循环节就又是偶数了,不过这个循环节是有重合的,比如0.45454545...就变成0.44+0.0144+0.00144...前面虽然多了些不是循环节的部分,不过循环节部分为数不受影响.
2008=2*2*2*251,251是素数,这样,我们只要求得1/251的循环节长度就好(除以2三次就是1/2008)
根据最上面的那部分10^250≡1(mod 251),如果有更小的e满足10^e≡1(mod 251),那么e是250的约数,250的约数有2,5,10,25,50,250
还有,同余式可以乘的,就是如果a≡c(mod m),b≡d(mod m) 则ab≡cd(mod m)
10^3≡-4(mod 251) 所以
10^5≡-400≡102(mod 251) 10^5不满足要求
10^10≡10404≡113(mod 251) 10^10不满足要求
10^20≡12769≡-32(mod 251) 10^20不满足要求
10^25≡-3264≡-1(mod 251) 10^25不满足要求
10^50≡1(mod 251) 10^50满足要求
所以循环节的长度就是50
2008=2^3×251
φ(251)=250
250的正因数有1、2,5、10、25、50、125、250,x取上述正因数并且满足10^x≡1 (mod 251)的最小的x是50,所以1/2008的循环节长度是50.没有分,也勉为其难了,
如果上面没看懂的话看证明文件点击打开链接
0 0
- 欧拉函数求一个数倒数的循环节长度
- 求一个数的倒数
- 求一个很大的数的欧拉函数
- 求一个数的质因子以及欧拉函数
- HDU 3501【欧拉函数拓展求一个数的所有质因子之和】
- 求一个数的开平方的倒数
- POJ2407---Relatives(求单个数的欧拉函数)
- 欧拉函数~求互质对数
- 求无限循环小数的循环节长度
- 倒数的循环节
- 给定一个有空格的字符串,求倒数第二个单词的长度
- 求一个数之前所有素数--for循环、函数的调用
- hdu 2837 Calculation【欧拉函数,快速幂求指数循环节】
- 写一个函数,求一个字符串的长度。
- 欧拉函数(求与n互质的数的个数)
- 欧拉函数(求与n互质的数的个数)
- UVa 10820 - Send a Table (求1-n中所有数的欧拉函数值)
- hdu 3501 欧拉函数(求小于n与n不互质的数之和)
- Rxjava分析—Subject
- 深拷贝与浅拷贝
- 每日总结10.25
- TreeFrog折腾记(3)——Tutorial翻译(上)
- 大数据云计算学习路线
- 欧拉函数求一个数倒数的循环节长度
- eachrts(1)折线图
- Mybatis学习----一对一和一对多
- 工厂模式与抽象工厂模式的不同
- Log4j 学习笔记(一) 学习指南目录
- 使用 CM 13 自带的 Root 功能
- Leetcode 263-264 ugly number
- 启动终端快捷键
- 有序广播,粘性广播