洛谷
考慮一本書最多用一次,所以拆點。
其他的答案、練習冊與書本的限制直接連1的邊就好了。
最後跑出來的最大流就是答案。
#includeusing namespace std;
const int n=100010,inf=1e9+10;
int front[n],cnt,s,t,n1,n2,n3;
struct node
e[500010];
queueq;
int dep[n];
void add(int u,int v,int w)
;front[u]=cnt++;
e[cnt]=(node);front[v]=cnt++;
}bool bfs()
}
} return dep[t];
}int dfs(int u,int flow)
else dep[v]=0;
} }return 0;
}int dinic()
return flow;
}int m;
int main()
scanf("%d",&m);
for(int i=1;i<=n3;i++)
add(i+n1+n2,t,1);
while(m--)
printf("%d\n",dinic());
return 0;
}
教輔的組成 洛谷1231 網路流
滾粗了的hansbug在收拾舊語文書,然而他發現了什麼奇妙的東西。蒟蒻hansbug在一本語文書裡面發現了一本答案,然而他卻明明記得這書應該還包含乙份練習題。然而出現在他眼前的書多得數不勝數,其中有書,有答案,有練習冊。已知乙個完整的書冊均應該包含且僅包含一本書 一本練習冊和乙份答案,然而現在全都亂...
洛谷 P1231 教輔的組成
題目背景 滾粗了的hansbug在收拾舊語文書,然而他發現了什麼奇妙的東西。題目描述 蒟蒻hansbug在一本語文書裡面發現了一本答案,然而他卻明明記得這書應該還包含乙份練習題。然而出現在他眼前的書多得數不勝數,其中有書,有答案,有練習冊。已知乙個完整的書冊均應該包含且僅包含一本書 一本練習冊和乙份...
洛谷 P1231 教輔的組成
滾粗了的hansbug在收拾舊語文書,然而他發現了什麼奇妙的東西。蒟蒻hansbug在一本語文書裡面發現了一本答案,然而他卻明明記得這書應該還包含乙份練習題。然而出現在他眼前的書多得數不勝數,其中有書,有答案,有練習冊。已知乙個完整的書冊均應該包含且僅包含一本書 一本練習冊和乙份答案,然而現在全都亂...