
UVA
mxYlulu
ACM燃烧我的卡路里
展开
-
Petri Net Simulation
UVA 804 Petri Net Simulation题意:对于一个变迁,需要多个入口满足,然后有多个出口。需要判断多次变迁之后是否这个网络还在运行。多个变迁任意进行一个不会对结果产生影响。感谢:https://github.com/morris821028/UVa/blob/master/volume008/804%20-%20Petri%20Net%20Simulation.cpp...原创 2019-02-25 17:30:02 · 1317 阅读 · 0 评论 -
表达式树的简析
二叉树是表达式处理的常用工具。找到"最后计算"的运算符(它是整棵表达式树的根),然后递归处理。递归处理成树是表达式处理的一个重要方式。这里我只记录和理解了lrjlrjlrj老师的代码(抄了一遍,自己还没动手自己写过。不过目前这不是重点内容,所以到此为止。个位数加减乘除成表达式树const int maxn = 1000;int lch[maxn],rch[maxn];char op[max...原创 2019-06-05 13:15:30 · 495 阅读 · 0 评论 -
存在免费套餐的最小生成树 Uva1151
题意:求最小生成树。(n2n^2n2条边:需要自己算一共有nnn个点的坐标)不过你可以选择一个套餐,花费ccc使得套餐内点全部连通。套餐数量q≤8,n≤1000q≤8,n≤1000q≤8,n≤1000题解:套餐数量较少,我们可以枚举(二进制即可)。枚举之后把所有包含的边权赋值为000求最小生成树并且能够使得(边权赋值为000的),primprimprim不太好实现。思路一:枚举∗...原创 2019-06-05 17:24:14 · 143 阅读 · 0 评论 -
隐式图搜索
隐式图搜索对于某些状压题,转移很少,但是状态很多。我们是无法直接判断能否转移的,因为实质上很多转移是没有必要的。所以我们在用到这个状态的时候,枚举转移即可。这是第一次遇到。如果以后更深的理解和好题自然会加上来。Uva658Uva 658Uva658题意:有nnn个bugbugbug,有mmm个补丁。每个补丁能够改变当前bugbugbug的总状态,不过也有前提条件(需要的状态)。我们...原创 2019-06-06 15:02:54 · 558 阅读 · 0 评论 -
紫书:二分图匹配 最大流解决
网络流的一个经典应用是二分图匹配。匹配是指:两两没有公共点的边集。二分图是指:可以把结点集分成两部分X和Y,使得每条边恰好一个端点在XXX,另一个端点在YYY。换句话说,同色节点不相邻,进行二染色。一般在画图的时候,把XXX结点和YYY结点画成左右两列。可以证明一个图是二分图,当且仅当没有奇数圈。当我们使用dinicdinicdinic跑二分图的时候,复杂度只有O(n12m)O(n^\f...原创 2019-06-01 22:54:06 · 603 阅读 · 0 评论