摘要: 首先看这个范围很夸张但是其实有限制的也就在1e18\ n范围里(走完一圈的边权),然后限制一定是有负环 用Floyd传递闭包,然后设f[i][j][k]为从1走了i步到j并且有k个x的最短路,用B F处理,然后有负环就是kx+f[n][i][k] include include include in 阅读全文
posted @ 2019-06-14 20:26 lokiii 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 首先恋人操作过一轮之后逆序对不会变多,所以设f[i]为把i个逆序对消掉的期望次数,f[i]=0.5f[i 2]+0.5f[i]+2,化简然后递推即可 cpp include include using namespace std; const int N=3005; int n,m,a[N]; do 阅读全文
posted @ 2019-06-14 11:15 lokiii 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 有一种限制下界强制选的,但是也可以不用 把每个格点拆成两个,一个连s一个连t,对于不是必选的连中间连流量1费用0边表示不选,然后黑白染色,黑点连横着白点连竖着,边权就是这条水管的权值,然后跑最大费用最大流 然后判断不可能就是不满流 并且这样可以满足每个被选的格子都在一个环上,因为他一定唯一对应另一个 阅读全文
posted @ 2019-06-14 11:00 lokiii 阅读(772) 评论(0) 推荐(0) 编辑