ACM-9月21日周四周中训练心得

    这周的前面的时间又去补了上周末的几道题,先是补了一道F题,题目的大概意思就是给出n,m,让我们求cos(nx)的展开式的(cos(x))^m项的系数。用的数学方面的知识,泰勒展开,从网上看到的公式推导

    知道推导公式后就能计算了

 

 while (scanf("%lld%lld",&n,&k)!=EOF)
    {
        if (n<k || (n+k)%2==1)
        {
            printf("0\n");
            continue;
        }
        ans=n%mo;//
        for (i=n-k+2;i<=n+k-2;i+=2) ans=ans*i%mo;
        for (i=2;i<=k;i++) ans=ans*ni(i,mo-2)%mo;
        if (k==0) ans=ans*ni(n%mo,mo-2)%mo;
        if ((n-k)/2%2==1) ans=mo-ans;
        printf("%lld\n",ans);
    }

    上周做的第一道题,套公式当时做的时候不行,后来发现是c++的局限,由于高精度对double的范围没有,比完赛后补题的时候才知道,别人使用java做的,自动高精度了,学到了c++的局限。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值