摘要: /*Dinic*/ #include #include #include #include #define maxn 210 #define inf 0x7fffffff using namespace std; int n,m,num,head[maxn],cur[maxn],dis[maxn]; struct node{ int u,v,flow,pre; }e[maxn*2]; v... 阅读全文
posted @ 2016-09-12 16:02 一入OI深似海 阅读(209) 评论(0) 推荐(0) 编辑
摘要: /* 比较简单的置换群题 首先排成升序 每个元素都有想去的位置 先找轮换 比如1->2 2->3 3->1 那么(1.2.3)就是一个轮换 可以看出他们之间互不影响 然后开始处理每个轮换 可以用数学归纳法证明处理每个小的需要最少换n-1次 为了让代价最小我们那c最小的元素当做中间值 这里有反例 就是如果有一个c很小的数 我们先把这个轮换里的min和这个交换 然后拿这个完成n-1次 最后再换回来 ... 阅读全文
posted @ 2016-09-12 14:51 一入OI深似海 阅读(213) 评论(0) 推荐(0) 编辑