[ AGC002 F ] Leftmost Ball
2021/5/3 18:27:07
本文主要是介绍[ AGC002 F ] Leftmost Ball,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
题目
Atcoder
思路
代码
#include <iostream> #include <cstring> #include <algorithm> using namespace std; const int N = 4000010, mod = 1e9 + 7; int n, k, fact[N], invf[N], f[2010][2010]; int qmi(int a, int b) { int res = 1; for (; b; b >>= 1, a = 1ll * a * a % mod) if (b & 1) res = 1ll * res * a % mod; return res; } int inv(int x) { return qmi(x, mod - 2); } int C(int n, int m) { return 1ll * fact[n] * invf[m] % mod * invf[n - m] % mod; } int main() { cin >> n >> k; fact[0] = 1, invf[0] = 1; if (k == 1) return cout << "1" << endl, 0; for (int i = 1; i <= 4000000; i++) fact[i] = 1ll * fact[i - 1] * i % mod, invf[i] = inv(fact[i]); for (int i = 0; i <= n; i++) f[i][0] = 1; for (int i = 1; i <= n; i++) for (int j = 1; j <= i; j++) f[i][j] = (f[i - 1][j] + 1ll * f[i][j - 1] * (n - j + 1) % mod * C(n * k - i - 1 - (j - 1) * (k - 1), k - 2) % mod) % mod; cout << f[n][n] << endl; return 0; }
这篇关于[ AGC002 F ] Leftmost Ball的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-29易优CMS安装常见问题汇总-icode9专业技术文章分享
- 2024-06-28易优新手必读安装教程-icode9专业技术文章分享
- 2024-06-28忘记eyoucms后台密码怎么办?-icode9专业技术文章分享
- 2024-06-26终极指南:Scrum中如何设置需求优先级
- 2024-06-26AI大模型企业应用实战(25)-为Langchain Agent添加记忆功能
- 2024-06-26小白家庭 nas 搭建方案-icode9专业技术文章分享
- 2024-06-23AI大模型企业应用实战(14)-langchain的Embedding
- 2024-06-23AI大模型企业应用实战(15)-langchain核心组件
- 2024-06-23AI大模型企业应用实战(16)-langchain核心组件
- 2024-06-23AI 大模型企业应用实战(06)-初识LangChain