zoukankan      html  css  js  c++  java
  • P3414 SAC#1

    https://www.luogu.org/problemnew/show/P3414(题目传送)

    这道题提醒大家一定要认真审题。看清楚后发现n的数据范围稍微小于long long类型的范围(看不清被0吓到的估计都去写近百行高精度和运算符重载了吧。。。),又知道关于组合数的

    一个定理:

        卢卡斯定理:(求解C(n,m)%p)C(n,m)%p=C(n/p,m/p)*C(n%p,m%p)%p

    一些公式:

     这样,解题的核心就是求2^(n-1),这里可以用快速幂来做。

    AC代码:

    #include<iostream>
    #include<cstdio>
    using namespace std;
    const long long p=6662333;
    long long ksm(long long a,long long b)
    {
        long long ans=1,c=a;
        while(b)
        {
            if(b&1) ans=ans*a%p;
            a=a*a%p;
            b>>=1;
        }
        return ans;
    }
    int main()
    {
        long long n;
        cin>>n;
        cout<<ksm(2,n-1);
        return 0;
    }

    题很简单,重要的是题带给我们的思考。考试时有一个知识点不知道,难度很容易就涨上去了。所以平时还是要多学,同时不能忘了学过的东西(公式书上可都有啊)。在做题时的审题也很重要,想想码上2小时后突然发现审错题时有多悲伤啊。。。

  • 相关阅读:
    团队作业第五次——冲刺任务与计划
    2020-04-29 冲刺第一天
    OO Unit 2 Summary
    OO Unit 1 Summary
    团队项目-选题报告
    第一次结对编程作业
    第一次个人编程作业
    软件工程第一次作业
    软件工程2019第一次作业
    α阶段第九次会议
  • 原文地址:https://www.cnblogs.com/InductiveSorting-QYF/p/10686205.html
Copyright © 2011-2022 走看看