摘要:
题目链接:http://lightoj.com/volume_showproblem.php?problem=1406思路:首先可以预处理出在每个顶点的状态的合法状态vis[u][state], 然后标记那些合法状态mark[state]。最后就是记忆化搜索了,对于当前状态state,我们有res = min(res, 1 + Solve(state ^ substate)), 其中substate为state的子状态,并且substate = (substate - 1) & state.那么最终就是要求Solve((1 2 #include 3 #include 4 #includ 阅读全文
摘要:
题目链接:http://lightoj.com/volume_showproblem.php?problem=1210思路:首先是缩点染色,然后重建并且统计新图中的每个点的入度和出度,于是答案就是max(入度为0的点的个数, 出度为0的点的个数,这里有一个trick就是如果scc_count == 1,那么应该输出0. 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 8 const int MAXN = (20000 + 20); 9 int n, m,... 阅读全文