
十一、大数问题(大素数,阶乘)
文章平均质量分 81
程序员的冷浪漫
爱好coding对世界充满好奇心
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
求n!最右端非 0的数字!!hdu Last non-zero Digit in N!
首先引用下leemars的报告: 这道题要求N!的最后一个非0数字是多少,如果用一般作法,先统计2和5的个数,然 后补乘2,得到的将是TLE。所以还需要再做简化: 为了把0去掉,我们把所有的因数2和5都提出来,放到最后再处理。N!中的N个相乘的 数可以分成两堆:奇数和偶数。偶数相乘可以写成(2^M)*(M!),M=N DIV 2。M!可以 递归处理,因此现在只需讨论奇数相乘。考虑原创 2012-10-05 09:33:19 · 2127 阅读 · 0 评论 -
判定一个大数是否素数
可以用Rabin-Miller检验法,判定一个大数是否素数 Rabin -Miller算法是典型的验证一个数字是否为素数的方法。判断素数的方法是Rabin-Miller概率测试,那么他具体的流程是什么呢。假设我们要判断n是不是素数,首先我们必须保证n 是个奇数,那么我们就可以把n 表示为 n = (2^r)*s+1,注意s 也必须是一个奇数。然后我们就要选择一个随机的整数a (1原创 2012-10-12 09:25:37 · 3318 阅读 · 0 评论 -
Nyoj 520 最大素因子
最大素因子 时间限制:1000 ms | 内存限制:65535 KB 难度:2 描述 GreyAnts最近正在学习数论中的素数,但是现在他遇到了一个难题:给定一个整数n,要求我们求出n的最大素因子的序数,例如:2的序数是1,3的序数是2,5的序数是3,以此类推. 研究数论是需要很大的耐心的,为了惩罚那些没有耐心读完题目的童鞋,我们规定:1的最大素因子序数是0.原创 2013-06-21 14:52:58 · 1162 阅读 · 0 评论 -
java 处理大数据
import java.math.*; import java.util.*; public class Main{ public static void main(String args[]) { BigInteger a[]=new BigInteger [1002] ; a[1]=new BigInteger("1"); a原创 2013-08-10 11:51:51 · 1057 阅读 · 0 评论