Processing math: 100%

codeforces 1278F - Cards(第二类斯特林数+二项式)

传送门

解题过程:#

=ni=0Cin1mim1mniik
根据第二类斯特林数的性质nk=ki=0Siki!Cin=ki=0Sikni_将普通幂转为下降幂
=ni=0Cin1mim1mnikj=0Sjkij_
=kj=0Sjkni=0Cin1mim1mniij_
Cin化出来就是n!(ni)!i!
所以n!(ni)!i!ij_=n!(ni)!(ij)!=(nj)!nj_(ni)!(ij)!=Cijnjnj_
答案=kj=0Sjknj_ni=jCijnj1mim1mni
通过变换积分上下限有
=kj=0Sjknj_1mjnji=0Cinj1mim1mnij
=kj=0Sjknj_1mj
n2预处理第二类斯特林数,其他的可以过程中求

#include <bits/stdc++.h>
using namespace std;
/*    freopen("k.in", "r", stdin);
    freopen("k.out", "w", stdout); */
// clock_t c1 = clock();
// std::cerr << "Time:" << clock() - c1 <<"ms" << std::endl;
//#pragma comment(linker, "/STACK:1024000000,1024000000")
#define de(a) cout << #a << " = " << a << endl
#define rep(i, a, n) for (int i = a; i <= n; i++)
#define per(i, a, n) for (int i = n; i >= a; i--)
#define ls ((x) << 1)
#define rs ((x) << 1 | 1)
typedef long long ll;
typedef unsigned long long ull;
typedef pair<int, int> PII;
typedef pair<double, double> PDD;
typedef pair<ll, ll> PLL;
typedef vector<int, int> VII;
#define inf 0x3f3f3f3f
const ll INF = 0x3f3f3f3f3f3f3f3f;
const ll MAXN = 5e5 + 7;
const ll MAXM = 1e5 + 7;
const ll MOD = 998244353;
const double eps = 1e-6;
const double pi = acos(-1.0);
ll quick_pow(ll a, ll b)
{
    ll ans = 1;
    while (b)
    {
        if (b & 1)
            ans = (1LL * ans * a) % MOD;
        a = (1LL * a * a) % MOD;
        b >>= 1;
    }
    return ans;
}
ll s[5005][5005];
void go()
{
    s[0][0] = 1;
    for (int i = 1; i <= 5000; i++)
        for (int j = 1; j <= i; j++)
            s[i][j] = (s[i - 1][j - 1] + j * s[i - 1][j]) % MOD;
}
int main()
{
    ll n, m, k;
    go();
    scanf("%lld%lld%lld", &n, &m, &k);
    ll inv = quick_pow(m, MOD - 2);
    ll ans = 0;
    ll up = 1;
    for (int i = 1; i <= k; i++)
    {
        (((up *= (n - i + 1)) %= MOD) *= inv) %= MOD;
        (ans += s[k][i] * up) %= MOD;
    }
    printf("%lld\n", ans);
    return 0;
}
posted @   GrayKido  阅读(280)  评论(0编辑  收藏  举报
编辑推荐:
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
阅读排行:
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 《HelloGitHub》第 106 期
· 数据库服务器 SQL Server 版本升级公告
· 深入理解Mybatis分库分表执行原理
· 使用 Dify + LLM 构建精确任务处理应用
主题色彩
点击右上角即可分享
微信分享提示