银魂

题目描述
求 n!在 k 进制下末尾 0 的个数。
输入描述
输入文件为 amstl.in
题目包含多组数据, 以 EOF(文件结尾)为结束。
对于每组数据,输入一行两个正整数 n,k;
输出描述
输出文件为 amstl.out
每组数据一行,包含一个整数,表示 n!在 k 进制下末尾 0
的个数。
样例输入
10 40
样例输出
2
数据范围及提示 对于 30%的数据, n <= 1000000, k = 10
对于另外 30%的数据, n <= 50, k <= 52
对于另外 10%的数据, n<=10^12, k = 2
对于 100%的数据, n <= 10^12, k <= 10^12
题解
对 n!的每个质因数的个数除以对应的 k 的每个质因数的个数, 对每
个答案取 min 即可。

#include<cstdio>
#include<iostream>
#include<cmath>
#include<cstring>
#define ll long long
using namespace std;
ll n,k;
ll ans=0x7fffffffffffffffll,cnt,res;
int main()
{
    freopen("amstl.in","r",stdin);
    freopen("amstl.out","w",stdout);
    while(scanf("%lld%lld",&n,&k)>=2)
    {
        ans=0x7fffffffffffffffll;
        for(ll i=2;i*i<=k;i++)
        {
            cnt=0;
            for(;k%i==0;k/=i)//******************对k分解质因数(注意此时质因数均<=根下k 
                cnt++;
            if(cnt==0) continue;
            res=0;
            for(ll j=i;j<=n;j*=i)//*******************分解n!的质因数的个数 
            {//如n!中质因数x的个数=n/x+n/x^2+n/x^3+……+1 (下取整 
                res+=n/j;
            }
            ans=min(ans,res/cnt);
        }
        if(k!=1)//处理大于根下k的质因数 
        {
           ll ret=0;
           for(ll i=k;i<=n;i*=k)
           {
            ret+=n/i;
           }

           ans=min(ans,ret);
        }
        printf("%lld\n",ans);
    }
    return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 好的,下面是几部高评价的动漫: 1.《银魂》:这是一部关于海盗的动漫,风格幽默,剧情紧凑,音乐也很棒。 2.《龙与虎》:这是一部关于格斗和友谊的动漫,故事情节扣人心弦,角色设计也非常出色。 3.《红楼梦》:这是一部关于爱情和人性的动漫,深刻地揭示了人类的贪婪和自私,故事情节也非常打动人心。 请注意,这些动漫的链接可能因地区而异,如果需要,可以在网络上搜索观看途径。 ### 回答2: 以下是几部备受好评的动漫,并附有相应的链接: 1. 《你的名字》:这部电影由新海诚导演,讲述了一段穿越时空的浪漫爱情故事。它以其精美的画面,动人的剧情和深刻的情感描绘,赢得了观众的广泛赞誉。[链接](https://movie.douban.com/subject/26683290/) 2. 《进击的巨人》:这部动画改编自同名漫画,讲述了人类为生存而与巨人战斗的故事。它以其扣人心弦的剧情,紧张刺激的动作场面和复杂的角色关系赢得了广大观众的喜爱。[链接](https://bangumi.bilibili.com/anime/13302) 3. 《夏目友人帐》:这部作品是一部幻想题材的日本动漫,讲述了少年夏目拥有看见妖怪的能力并与他们建立友谊的故事。它以温馨感人的故事情节,细腻的画面和优美的音乐,深受观众的喜爱。[链接](https://bangumi.bilibili.com/anime/1066) 4. 《钢之炼金术师》:这部动画改编自同名漫画,讲述了两个兄弟为了找回失去的身体而展开冒险的故事。它以其紧凑的剧情,丰富的角色塑造和深入思考的主题,成为了经典中的经典。[链接](https://bangumi.bilibili.com/anime/385) 以上是几部备受好评的动漫,它们都在剧情、艺术和故事性方面获得了广泛赞赏。无论是浪漫爱情、惊险动作还是幻想题材,这些作品都能给观众带来难忘的观影体验。 ### 回答3: 以下是几部高评价的动漫推荐以及相应的链接: 1. 《你的名字。》- 这是一部由新海诚导演的爱情动画电影。故事发生在一场神秘的身体交换之后,主人公们开始逐渐发现彼此之间的联系。这部影片融合了美丽的画面和深情的剧情,获得了广泛的赞誉。链接:https://movie.douban.com/subject/26683290/ 2. 《进击的巨人》- 这是一部具有强烈紧张感和悬疑的冒险动画。故事讲述了人类为了生存而与巨大的人类捕食者“巨人”展开战斗的故事。这部动画展现了复杂的角色关系和扣人心弦的剧情,备受观众喜爱。链接:https://bangumi.bilibili.com/anime/1053/ 3. 《鬼灭之刃》- 这部动画改编自人气漫画,以战斗为主题。故事讲述了拜入鬼殺隊的主人公炭治郎与妹妹禰豆子一起,为寻求报仇而和恶鬼战斗的故事。这部动画以其精美的画面和戏剧性的动作而广受好评。链接:https://bangumi.bilibili.com/anime/3446/ 4. 《夏目友人帐》- 这是一部带有温暖情感的神秘和治愈类动画。故事围绕着能够看到妖怪的主人公夏目贵志展开,他与妖怪们的奇妙冒险情节和人与妖怪之间的情感纠葛引人入胜。这部动画凭借其精致的艺术风格和感人的情节赢得了观众的喜爱。链接:https://bangumi.bilibili.com/anime/645/ 以上动画作品都拥有高质量的剧情和精美的动画制作,无论是情节还是场景都展示了动画的魅力。您可以点击链接详细了解并欣赏这些动画作品。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值