首页 > Vani和cl2捉迷藏
头像 louhc
发表于 2019-08-24 14:01:58
思路 事实上,此题等价于求最小路径可重覆盖.为什么呢?我们可以考虑构造出所有的藏身点.首先,跑一遍最小路径可重覆盖后,将所有路径的终点加入集合.假设表示.表示传递闭包后的边集.如果,选取,不断沿着路径向前移,直到为止.不断重复以上过程,直到停止.容易证明,这样肯定能找到一个合法的方案.这题不需要输出 展开全文
头像 minux_sufe
发表于 2020-07-06 14:31:18
#include <bits/stdc++.h> using namespace std; const int N=205; const int M=30005; int n, m; bool g[N][N], vis[N]; int match[N]; bool find(int 展开全文