链接:https://www.nowcoder.com/acm/contest/197/A
来源:牛客网

时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 262144K,其他语言524288K
64bit IO Format: %lld

题目描述

令 X = n!, 给定一大于1的正整数p 求一个k使得 p ^k | X 并且 p ^(k + 1) 不是X的因子。

输入描述:

两个数n, p (1e18>= n>= 10000 >= p >= 2)

输出描述:

一个数
表示k

输入例子:
10000 12
输出例子:
4996

-->

示例1

输入

复制

10000 12

输出

复制

4996

解题思路:想说比赛的时候数据范围看错了,一直段错误的要哭了。。。首先,我们知道对于任意一个数,我们都可以把他拆分成若干素因子乘积的形式如n=p^x+q^y+……r^z(p,q,……,r为素数),因为p<=n,所以p一定是n!的一个因子,所以p中含有的素因子n!中必定含有,并且幂次小于等于n!中该素因子的幂次。我们需要求一个k使得 p ^k | X 并且 p ^(k + 1) 不是X的因子,所以我们只要求p分解所得的每个素因子x的幂次ccount(x),对应于n!素因子分解中x的幂次count(x),用count(x)/ccount(x)再取最小值即为答案。

附上代码:
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n,p,cnt;
ll count(ll k) //计算x!的质因数分解中质因子k的幂
{
ll tot=,x=n;
while(x)
{
tot+=x/k;
x/=k;
}
return tot;
}
ll ccount(ll x) //计算x的质因数分解中质因子y的幂
{
ll tot=;
while(p%x==)
{
tot++;
p/=x;
}
return tot;
}
int main()
{
scanf("%lld%lld",&n,&p);
ll ans=1e18;
for(int i=;i<=p;i++)
if(p%i==)
ans=min(ans,count(i)/ccount(i));
printf("%lld\n",ans);
return ;
}

牛客网Wannafly挑战赛25A 因子(数论 素因子分解)的更多相关文章

  1. 牛客网Wannafly挑战赛25A 因子 数论

    正解:小学数学数论 解题报告: 传送门 大概会连着写几道相对而言比较简单的数学题,,,之后就会比较难了QAQ 所以这题相对而言还是比较水的,,, 首先这种题目不难想到分解质因数趴,, 于是就先对p和n ...

  2. 牛客网 Wannafly挑战赛9 A.找一找-数据处理

    好几天没好好学习了(咸鱼晒干了) 把稍微没那么咸鱼的几天前的一场牛客网的比赛稍微看了一下,菜的要死,这一场大数的比较多,都死了. A.找一找 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C ...

  3. 牛客网 Wannafly挑战赛 A 找一找 思考题

    链接:https://www.nowcoder.com/acm/contest/71/A来源:牛客网 题目描述 给定n个正整数,请找出其中有多少个数x满足:在这n个数中存在数y=kx,其中k为大于1的 ...

  4. 题解——牛客网Wannafly挑战赛23 B-游戏 (SG函数)

    前言 比赛的时候没学过SG函数的蒟蒻以为是道结论题,但是不是QwQ 和dummyummy巨佬一起推了快三个小时的规律 最后去问了真正的巨佬__stdcall __stdcall面带微笑的告诉我们,这是 ...

  5. 牛客网 Wannafly挑战赛27 蓝魔法师

    蓝魔法师 链接: https://www.nowcoder.com/acm/contest/215/C 来源:牛客网 题目描述 "你,你认错人了.我真的,真的不是食人魔."--蓝魔 ...

  6. 牛客网 Wannafly挑战赛8 B.LBJX的三角形

    B-LBJX的三角形 链接:https://www.nowcoder.com/acm/contest/57/B来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 32768K, ...

  7. 牛客网 Wannafly挑战赛8 A.小Y和小B睡觉觉

    写了一会不想写了... A-小Y和小B睡觉觉 链接:https://www.nowcoder.com/acm/contest/57/A来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制: ...

  8. 牛客网 Wannafly挑战赛11 B.白兔的式子-组合数阶乘逆元快速幂

    链接:https://www.nowcoder.com/acm/contest/73/B来源:牛客网 B.白兔的式子   时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 262144K, ...

  9. 牛客网 Wannafly挑战赛11 A.白兔的分身术

    水一水博客. 链接:https://www.nowcoder.com/acm/contest/73/A来源:牛客网 A.白兔的分身术     时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C ...

随机推荐

  1. js在微信、微博、QQ、Safari唤起App的解决方案

    首先看下完整的流程: 简单说下universal link 在iOS9之前,唤起方式和现在安卓是一个的,都是使用scheme进行唤起,这种方式有个小问题,每次唤起,都会给个提示:是否打开xx应用,这样 ...

  2. 并发包 concurrent(一) Atomic

    1:基础概念 悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁.传 ...

  3. [转帖]Huge Page 是否是拯救性能的万能良药?

    Huge Page 是否是拯救性能的万能良药? 本文将分析是否Huge Page在任何条件下(特别是NUMA架构下)都能带来性能提升. 文章欢迎转载,但转载时请保留本段文字,并置于文章的顶部 作者:卢 ...

  4. [转帖]全国产 台式机/笔记本/服务器都有 方正龙芯3A3000整机三连发

    台式机/笔记本/服务器都有 方正龙芯3A3000整机三连发 2019年03月29日 17:17 4171 次阅读 稿源:快科技 7 条评论 https://www.cnbeta.com/article ...

  5. laravel中如何在模型中自关联?

    https://segmentfault.com/q/1010000007926567 在模型中声明一对多的关系,关联表本身.parent_id对应父记录的id.我在sof中查阅到很多这样的写法: p ...

  6. Navicat 远程连接Docker容器中的mysql 报错:1251 - Client does not support authentication protocol 解决办法。

    出现这个问题 首先进入 1.docker exec -it mysql02 bash      //mysql02是mysql容器的别名 2.mysql -uroot -p 3.输入密码 4.进入my ...

  7. js对日期的判断

    在初始页面获取倒当前时间并向前推N天后作为起始时间       function date(){          var myDate = new Date();          //获取当前时间 ...

  8. 动态sql and在前 逗号在后

  9. .net core 2.0 Unable to convert MySQL date/time to System.DateTime

    解决方案 在连接字符串加入convert zero datetime=True

  10. 前端nginx+Java后台ftp处理页面图片上传踩坑

    今天,将前端代码部署到服务器nginx上,在测试多图片上传时,报错413请求体空间太大,请求都没到后台,直接被nginx拦截,调整后又报错504. 整体而言,前端存在两处问题: 413 错误 :Req ...