牛客IOI周赛17-普及组D,数列统计

数列统计

https://ac.nowcoder.com/acm/contest/5881/D

题意

求以xx结尾的长度为ll的不下降正整数数列一共有多少个。对911451407911451407取模

输入描述

本题有多组数据。
第一行一个正整数TT,表示数据组数。
对于每组数据:两个用空格隔开的整数l, xl,x。

输出描述

T行,每行一个答案。

解析

看了隔壁大佬的博客大佬博客

打表找规律 最后得出递推式

代码

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
const int mod = 911451407;
const int maxn = 100005;
ll fac[2000005];
ll qpow(ll x,ll y){
     x %= mod;
    ll ans = 1;
    while(y){
        if(y&1) ans = ans*x%mod;
        x = x*x%mod;
        y >>= 1;
    }
    return ans;
}
int main(void){
    ios::sync_with_stdio(false);
    fac[0] = 1;
    for(int i = 1 ; i < 2000005 ; ++i) fac[i] = fac[i-1]*i%mod;
    int t;
    cin>>t;
    while(t--){
        ll l,x;
        cin>>l>>x;
        ll ans = fac[x+l-2]*qpow(fac[x-1],911451405)%mod;
        ans = ans*qpow(fac[l-1],911451405)%mod;
        cout<<ans<<endl;
    }
}
全部评论

相关推荐

02-14 12:40
门头沟学院 Java
程序员花海:1.面试要求必须Java笔试不一定 2.难度对等秋招 远超于日常实习是因为同一批次且转正很多 竞争压力大 3.第一个加点指标,上线了就把接口性能加上去 使用本地缓存这个不算亮点 只是技术选型,要把为什么采用这个和背后的思考写出来而不是单纯堆叠技术没意义 4.八股要一直看 很容易忘记 5.拼团交易这个老问题 堆积技术 另外建议你把奖项合并到教育背景 没必要拆出来放最后
我的简历长这样
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务