zoukankan      html  css  js  c++  java
  • 洛谷 P1762 偶数

               洛谷 P1762 偶数

    题目描述

    给定一个正整数n,请输出杨辉三角形前n行的偶数个数对1000003取模后的结果。

    输入输出格式

    输入格式:

    一个数

    输出格式:

    结果

    输入输出样例

    输入样例#1:  
    6
    
    输出样例#1:  
    6

    说明

    对于30%的数据,n<=4000

    对于70%的数据,n<=4*10^9

    对于100%的数据,n<=10^15

    杨辉三角形的前七行:

    1

    1 1

    1 2 1

    1 3 3 1

    1 4 6 4 1

    1 5 10 10 5 1

    1 6 15 20 15 6 1

    题解:

    #include<cstdio>
    #include<iostream>
    #define mo 1000003
    using namespace std;
    long long n,d,z,ans,a[55],b[55],v,p;
    int i,t;
    int main(){
        cin>>v;
        n=v;z=1;d=z<<50;
        t=50;
        while(n!=0){
            if(n>=d){
                n=n-d;
                a[++a[0]]=t;
            }
            d>>=1;
            t--;
        }
        b[0]=1;
        for(int i=1;i<=a[1];i++)b[i]=(b[i-1]*3)%mo;
        for(int i=1;i<=a[0];i++)ans+=b[a[i]]*(long long)(z<<i-1);
        p=(((z+v%mo)*(v%mo))/2);
        p%=mo;
        ans%=mo;
        if(p<ans)p+=mo;
        p=(p-ans)%mo;
        cout<<p;
        return 0;
    }

     一世安宁

  • 相关阅读:
    windows下安装各种python包
    error?
    PBS error
    samtools error
    samtools idxstats
    maf error
    tba error
    基因组拼接中常见的名词解释
    Spring could使用FeignClient超时问题
    sql在指定列后添加或删除字段
  • 原文地址:https://www.cnblogs.com/GTBA/p/9255758.html
Copyright © 2011-2022 走看看