算数基本定理 - nefu 118
算数基本定理
每个大于1的正整数都可以被唯一分解为素数的成绩,在乘积中的素因子按照非降序排列
- a = p1^a1 * p2^a2 * ... pn^an;
- b = p1^b1 * p2^b2 * ... pn^bn;
- gcd(a,b) = p1^min(a1,b1) * p2^min(a2,b2) * ... pn ^ min(an,bn);
- lcm(a,b) = p1^max(a1,b1) * p2^max(a2,b2) * ... pn ^ max(an,bn);
- max(gcd(a,b)) + min(gcd(a,b)) = a + b;
- n!的素因子分解中素数p的幂为[n/p]+[n/p2]+[n/p3]... p^t <= n
- 在因式分解中,2的因子的个数要大于5的因子的个数
题意:计算N!末尾的0的个数
分析:
显然分析是很重要的,计算末尾0的个数显然不科学,所以转化为计算2*5的个数,又有定理:在因式分解中,2的因子的个数要大于5的因子的个数,
则只要计算5的幂就好,用公式n!的素因子分解中素数p的幂为[n/p]+[n/p2]+[n/p3]... 0(p^t <= n)
算数基本定理的应用
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cstdlib>
using namespace std;
typedef long long ll;
int main()
{
int cas;
cin >> cas;
while(cas--)
{
ll n;
cin >> n;
ll five = 5;
ll sum = 0;
while(five < n)
{
sum += n/five;
five *= 5;
}
cout << sum << endl;
}
return 0;
}
算数基本定理 - nefu 118的更多相关文章
- 数论 - 算数基本定理的运用 --- nefu 118 : n!后面有多少个0
题目链接:http://acm.nefu.edu.cn/JudgeOnline/problemshow.php Mean: 略. analyse: 刚开始想了半天都没想出来,数据这么大,难道是有什么 ...
- LightOJ 1336 Sigma Function 算数基本定理
题目大意:f(n)为n的因子和,给出 n 求 1~n 中f(n)为偶数的个数. 题目思路:算数基本定理: n=p1^e1*p2^e1 …… pn^en (p为素数): f(n)=(1+p1+p1^2+ ...
- LightOJ 1341 Aladdin and the Flying Carpet 算数基本定理
题目大意:给出面积n,和最短边m,求能形成的矩形的个数(不能为正方形). 题目思路:根据算数基本定理有: 1.每个数n都能被分解为:n=p1^a1*p2^a2*^p3^a3……pn^an(p为素数); ...
- pku 1401 Factorial 算数基本定理 && 51nod 1003 阶乘后面0的数量
链接:http://poj.org/problem?id=1401 题意:计算N!的末尾0的个数 思路:算数基本定理 有0,分解为2*5,寻找2*5的对数,2的因子个数大于5,转化为寻找因子5的个数. ...
- [LightOJ 1341] Aladdin and the Flying Carpet (算数基本定理(唯一分解定理))
题目链接: https://vjudge.net/problem/LightOJ-1341 题目描述: 问有几种边长为整数的矩形面积等于a,且矩形的短边不小于b 算数基本定理的知识点:https:// ...
- 【POJ1845】Sumdiv【算数基本定理 + 逆元】
描述 Consider two natural numbers A and B. Let S be the sum of all natural divisors of A^B. Determine ...
- nefu 118 n!后面有多少个0 算数基本定理,素数分解
n!后面有多少个0 Time Limit 1000ms Memory Limit 65536K description 从输入中读取一个数n,求出n! 中末尾0的个数. input 输入有若干行.第一 ...
- NEFU 118 - n!后面有多少个0 & NEFU 119 - 组合素数 - [n!的素因子分解]
首先给出一个性质: n!的素因子分解中的素数p的幂为:[ n / p ] + [ n / p² ] + [ n / p³ ] + …… 举例证明: 例如我们有10!,我们要求它的素因子分解中2的幂: ...
- NEFU 118 n!后面有多少个0【数论】
http://acm.nefu.edu.cn/JudgeOnline/problemShow.php?problem_id=118 求n!后面有多少个0(1<=n<=1000000000) ...
随机推荐
- webservice接口问题:Payload: No message body writer has been found for class domain, ContentType: application/xml
当在使用cxf-rs的webservice的时候,有时候在传输数据,会发生这种错误 错误代码: Response-Code: 500 Content-Type: text/plain Headers: ...
- VC++SDK编程——字体及位置示例
#include <Windows.h> #include <tchar.h> #include <math.h> #define PI 3.1415926 BOO ...
- Divisibility by Eight---cf550C(被8整除 暴力)
题目链接:http://codeforces.com/problemset/problem/550/C 题意是给你一个不操过100位的数,问删除m位之后,问剩下的数不改变顺序能被8整除的数存在不存在: ...
- Swift学习——A Swift Tour 枚举和结构体
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/zhenyu5211314/article/details/28588095 Enumerations ...
- Jmeter(十)Linux下配置安装Jmeter及执行测试任务
一.安装JDK7.0版本 1.先卸载服务器自带的jdk软件包 # java -version #查看服务器是否安装过 # rpm -qa |grep gcj #查看服务器安装的jdk软件包信息 # y ...
- SDUT3143:Combinatorial mathematics(组合数学)
题意:传送门 题目描述 As you know, shadow95 is pretty good at maths, especially combinatorial mathematics. Now ...
- Oracle数据库查找持有锁的SQL语句,而不是请求锁的SQL语句(原创)
Oracle数据库查找持有锁的SQL语句,而不是请求锁的SQL语句 查找活动的事务以及活动事务关联的会话信息 select s.sid 会话ID, s.serial# 会话序列号, s.usernam ...
- 使用jQuery创建节点、将节点插入到指定的位置
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- std::decay
参考资料 • cplusplus.com:http://www.cplusplus.com/reference/type_traits/decay/ • cppreference.com:http:/ ...
- 关于js中的取值问题
像这样是获取不到值的,弹出的消息是 underfined:<html><style type="text/css">input { border: 1px ...