ZJOI 2009 假期的宿舍 最大匹配

2022-08-02 21:21:11 字數 632 閱讀 8676

主要是main()中的處理,接下來就是二分匹配的模板題了

#include#include

#define maxn 110

using

namespace

std;

inta[maxn][maxn],link[maxn];

intb[maxn],c[maxn];

bool

vis[maxn];

intn,m,cnt,ans,t;

bool find(int

x) }

}return0;

}int

main()

//cnt表示需要床位的學生人數

for(int i=1;i<=n;i++)

if(b[i]&&!c[i])//

自己是本校生而且自己不回家,那麼自己可以睡自己的床

a[i][i]=1

; }

for(int i=1;i<=n;i++)

if(ans==cnt) printf("

^_^\n

");

else printf("

t_t\n");

}return0;

}

ZJOI2009 假期的宿舍

題目描述 學校放假了 有些同學回家了,而有些同學則有以前的好朋友來探訪,那麼住宿就是乙個問題。比如 a 和 b 都是學校的學生,a 要回家,而 c 來看b,c 與 a 不認識。我們假設每個人只能睡和自己直接認識的人的床。那麼乙個解決方案就是 b 睡 a 的床而 c 睡 b 的床。而實際情況可能非常複...

ZJOI2009 假期的宿舍

這道題分析下就會發現是乙個二分圖匹配。將在校 包括來校訪友 和床單構成圖,判斷最大匹配數是否為總在校人數即可。這裡用的是 km 演算法。1 include 2 3using namespace std 45 define re register 6 define rep i,a,b for re i...

ZJOI2009 假期的宿舍

題目 洛谷p2055 bzoj1433 codevs2347。題目大意 有n個人,有些人是學生,有些人是來看學生的 不是學生 學生有床,而非學生沒有 廢話!有些學生回家,有些學生晚上住校,來看學生的人要住在學校裡。現在有一些認識的關係,規定每個要在學校睡覺的人只會睡在自己認識的人的床上,問能否使所有...