BZOJ2140穩定婚姻

2021-08-29 04:08:39 字數 578 閱讀 5173

傳送門

剛看到這道題本來以為是穩定婚姻問題的

結果是這麼一道題面不可描述的題目

每一對夫妻中女向男連邊,而每一對情侶中男向女連邊,這樣才可以保證形成男->女->男->女...

.....

.的環t ar

ja

ntarjan

tarjan

求強連通分量,如果夫妻在同乙個強連通分量裡,那麼是危險的,否則是不危險的

#include#define il inline

using namespace std;

const int n=8005,m=40005;

string s1,s2;

mapd;

int n,m,k,tim,top,sum,h[n],dfn[n],low[n],v[n],s[n],c[n];

struct edgea[m];

il void add(int x,int y)

il void tarjan(int x)

if(dfn[x]==low[x])

}int main()

bzoj 2140 穩定婚姻

查詢二分圖每一條邊是否一定在二分圖最大匹配上 首先任意乙個最大匹配,然後把兩個匹配點縮成乙個點,然後用這個圖跑強連通分量,如果乙個點所在的強連通分量大小大於1,那麼說明原圖存在一條匹配邊 非匹配邊 匹配邊 非匹配邊的環,所以這些邊不一定在最大匹配上。include include include i...

BZOJ2140 穩定婚姻

暴力點的我們可以每次拆一對然後跑匈牙利看看能不能跑出來,可以過 然後我們發現匈牙利能跑出來的條件是有乙個環,所以tarjan就可以了 include include include include include include include include include include inc...

BZOJ 2140 穩定婚姻

time limit 2 sec memory limit 259 mb submit 771 solved 359 submit status discuss 第一行為乙個正整數n,表示夫妻的對數 以下n行,每行包含兩個字串,表示這n對夫妻的姓名 先女後男 由乙個空格隔開 第n 2行包含乙個正整數...