首页 > 其他分享 >Road of the King 题解

Road of the King 题解

时间:2024-09-11 21:47:17浏览次数:13  
标签:King 连通 int 题解 号点 Road dp

Road of the King 题解

形成强连通图的必要条件是点 \(1\) 能在环中,于是考虑 \(1\) 号点形成的强连通分量 \(x\)。 这类图论计数题目往往考虑 dp,于是我们设 \(dp_{i,j,k}\) 表示走了 \(i\) 步,经过了 \(j\) 个点,\(1\) 号点形成的强连通分量 \(x\) 的大小为 \(k\) 时的方案数。转移方程是容易的。

其实本题如果想到了考虑 \(1\) 号点形成的强连通分量 \(x\) 就很简单了。

代码:

#include <bits/stdc++.h>
#define N 302
#define int long long
#define mod 1000000007
using namespace std;
int n, m;
int dp[N][N][N];
void add(int &x, int y) {
	x = (x + y) % mod;
}
signed main() {
	cin >> n >> m;
	dp[0][1][1] = 1;
	for (int i = 0; i < m; i++)
		for (int j = 1; j <= n; j++)
			for (int k = 1; k <= n; k++) {
				add(dp[i + 1][j + 1][k], dp[i][j][k] * (n - j) % mod);
				add(dp[i + 1][j][j], dp[i][j][k] * k % mod);
				add(dp[i + 1][j][k], dp[i][j][k] * (j - k) % mod);
			}
	cout << dp[m][n][n] << "\n";
	return 0;
}

标签:King,连通,int,题解,号点,Road,dp
From: https://www.cnblogs.com/Rock-N-Roll/p/18409056

相关文章

  • CF786B 题解
    题意洛谷题面传送门现有一个图,有\(n\)个节点,从节点\(s\)出发,求到\(n\)个点每一个点的最短路。其中,有三种建边方式:建一条从\(u\)到\(v\)的单向边。从节点\(v\)分别向\([l,r]\)的每个结点连一条边。从节点\([l,r]\)向节点\(v\)连边芝士线段树优......
  • 【洛谷 P5076】【深基16.例7】普通二叉树(简化版)题解(多重集合+lower_bound+upper_bound
    【深基16.例7】普通二叉树(简化版)题目描述您需要写一种数据结构,来维护一些数(都是以内的数字)的集合,最开始时集合是空的。其中需要提供以下操作,操作次数不超过:查询数的排名(排名定义为比当前数小的数的个数。若有多个相同的数,应输出最小的排名)。查询排名为的数。求的前驱(......
  • P6684 题解
    CF1386CP6684cf上时限\(1\)秒,洛谷\(2\)秒。思路维护是否有奇环可用拓展域并查集。暴力复杂度\(O(mq)\)。发现插入容易删除困难,用不删除的莫队,可撤销并查集,复杂度\(O((n+q)\sqrtm\logn)\)。大概要\(5\)秒左右,只能过洛谷上的前\(5\)个子任务。等价对于每个\(r\)......
  • 单词游戏 题解
    四倍经验51nod2875单词游戏acwing1185.单词游戏洛谷SPOJWORDS1-PlayonWords单词PlayonWords我们可以将每一个字母看成一个节点,这样我们就有了一个包含26个节点的图,对于读入的单词,我们将首字母和尾字母对应的节点之间建有向边(中间的字母没什么用就不管了)。此......
  • 【秋招笔试】9.09阿里国际秋招(已改编)-三语言题解
    ......
  • 【秋招笔试】9.08字节跳动秋招(已改编)-三语言题解
    ......
  • 挑战不可能篇1——洛谷28分钟14道CCF GESP C++ 一级上机题&洛谷14道题题解
    扯谈今天继续挑战不可能:洛谷28分钟14道题这我个人认为不简单,算上编译、提交、命名等杂七杂八的东东之后,只剩下了大约1分钟/题。本次挑战的是CCFGESPC++一级上机题.这竟然能成功!下面附上每一题第一题第二题第三题第四题第五题第六题第七题第八题第九题第十题......