考慮乙個試題要被加入進答案的集合有什麼條件?
就這兩種且的限制,所以我們用串聯的方式連線"型別點"和"作用點"。
判斷無解就判斷容量是否滿了。輸出方案就輸出有流量的邊的終點。
//@winlere
#include#include#include#include#includeusing namespace std; typedef long long ll;
inline int qr()
const int inf=0x3f3f3f3f;
const int maxn=1.9e3+5;
int nodecnt;
struct ee[50005];
int head[maxn];
int cur[maxn];
int d[maxn];
int cnt=-1,s,t,n,m,k;
vector< int > ve[maxn];
inline void add(const int&fr,const int&to,const int&w,const int&f);
head[fr]=cnt;
if(f)add(to,fr,0,0);
}queue< int >q;
inline bool bfs()}}
return d[t];
}int dfs(const int&now,const int&last,int fl)
}return ret;
}inline int dinic()
int main()
dinic();
int ok=1;
for(register int t=head[s];t!=-1;t=e[t].nx)
if(e[t].w) ok=0;
if(ok)
}else puts("no solution!");
return 0;
}
題解 P2763 試題庫問題
題目描述 問題描述 假設乙個試題庫中有n道試題。每道試題都標明了所屬類別。同一道題可能有多個類別屬性。現要從題庫中抽取m 道題組成試卷。並要求試卷包含指定型別的試題。試設計乙個滿足要求的組卷演算法。程式設計任務 對於給定的組卷要求,計算滿足要求的組卷方案。輸入輸出格式 輸入格式 第1行有2個正整數k...
網路流問題 P2763 試題庫問題
問題描述 假設乙個試題庫中有n道試題。每道試題都標明了所屬類別。同一道題可能有多個類別屬性。現要從題庫中抽取m 道題組成試卷。並要求試卷包含指定型別的試題。試設計乙個滿足要求的組卷演算法。程式設計任務 對於給定的組卷要求,計算滿足要求的組卷方案。輸入格式 第1行有2個正整數k和n 2 k 20,k ...
P2763 試題庫問題 網路流 最大流
傳送門 解題思路 比較簡單的網路流,建圖還是比較好想的。讓源點向試題連流量為1的邊,試題向所屬型別連流量為1的邊,型別向匯點連流量為需要此類試題的邊。直接跑最大流,輸出答案時找到那些滿流的邊所對的點。include include include include include using name...