將乙個房間當做乙個點,後來的房間與之前的房間中不用搬的人作為權值,建圖,跑最大權匹配,就是不用搬的人數,在減一下即可,km演算法,o(n^3)
#include#include#include#includeusing namespace std;
#define n 200
#define inf 0x3f3f3f3f
int nx,ny;
int slack[n];
int match[n];
int mpt[n][n];
int lx[n],ly[n];
int sx[n],sy[n];
map mp;
struct p
p[2*n];
int findpath(int u)
}else if(tmplx[i]) lx[i]=mpt[i][j];}}
for(u=1; u<=nx; u++)
while(1)
for(i=1; i<=nx; i++)
for(i=1; i<=ny; i++)}}
int sum=0;
for(i=1; i<=ny; i++)
return sum;
}int main()
}nx = ny = n;
int ans = km();
printf("%d\n",n*4-ans);
return 0;
}
2019 8 1 牛客多校第五場
index 牛客多校第五場 題號標題 通過率做法狀態a digits 2 1017 2383 簽到 bgenerator 1 555 3660 矩陣快速冪 十進位制優化 cgenerator 2 37 626 dgenerator 3 4 23 eindependent set 1 45 110 f...
牛客網多校第五場E room(最小費用最大流)
題目大意 一間學校有 n 間宿舍,每間宿舍有 4 個人,給出這個學校第一學年的宿舍安排 現在第二學年需要換寢室,換寢室是學生自己組隊,每四個人抱團,現在你需要給他們安排具體的宿舍位置,使得換宿舍的人數量盡可能少 1 n 100 題目思路 轉化為最小費用最大流解決的二分圖問題,對每個去年的宿舍,向每個...
2018牛客多校第五場 H subseq
傳送門 這場樹狀陣列用法專場,skydec說這題很套路的題,很簡單,然而處理處dp陣列後最後的貪心我想了半天還問了一蛤別人,菜不成聲.jpg,先處理出dp陣列,dp i 表示以a i 為開頭的從i到n的所有遞增子串行的方案數,本來應該用線段樹了,然而好多人使用了神奇的樹狀陣列,以前都是add函式從i...