当前位置: 首页 > news >正文

海报自动设计网站创意设计思维

海报自动设计网站,创意设计思维,佛山市网络seo推广公司,cute模板wordpress题意 传送门 AtCoder ABC239G Builder Takahashi 题解 将原图中每个节点拆为入点 v v v 与出点 v ′ v v′#xff0c;对于原图任一边 ( u , v ) (u,v) (u,v) 则 u ′ → v , v → u u\rightarrow v, v\rightarrow u u′→v,v→u 连一条容量为 ∞ \infty ∞ 的边…题意 传送门 AtCoder ABC239G Builder Takahashi 题解 将原图中每个节点拆为入点 v v v 与出点 v ′ v v′对于原图任一边 ( u , v ) (u,v) (u,v) 则 u ′ → v , v → u u\rightarrow v, v\rightarrow u u′→v,v→u 连一条容量为 ∞ \infty ∞ 的边对于原图每一个点 v → v ′ v\rightarrow v v→v′ 连一条容量为 c v c_v cv​ 的边。此时答案为新图的最小割。 对于最小割集的求解求解最大流后从源点出发在残余网络中 DFS对所有可达的点打上标记最终满足 v v v 被标记而 v ′ v v′ 未被标记的节点则属于最小割集。 #include bits/stdc.h using namespace std; using ll long long; constexpr ll INF 1e18; struct MaxFlow {struct Edge {int to;ll cap;int rev;};vectorint iter, level;vectorvectorEdge g;MaxFlow(int n) : iter(n), level(n), g(n) {}void add_edge(int from, int to, ll cap) {g[from].push_back({to, cap, (int)g[to].size()});g[to].push_back({from, 0, (int)g[from].size() - 1});}void bfs(int s) {fill(level.begin(), level.end(), -1);queueint q;level[s] 0;q.push(s);while (!q.empty()) {int v q.front();q.pop();for (auto [to, cap, _] : g[v]) {if (cap 0 level[to] -1) {level[to] level[v] 1;q.push(to);}}}}ll dfs(int v, int t, ll f) {if (v t) {return f;}for (int i iter[v]; i (int)g[v].size(); i) {auto e g[v][i];if (e.cap 0 level[v] level[e.to]) {int d dfs(e.to, t, min(f, e.cap));if (d 0) {e.cap - d;g[e.to][e.rev].cap d;return d;}}}return 0;}ll max_flow(int s, int t) {ll flow 0;for (;;) {fill(iter.begin(), iter.end(), 0);bfs(s);if (level[t] -1) {return flow;}ll f;while ((f dfs(s, t, INF)) 0) {flow f;}}} }; int main() {ios::sync_with_stdio(false);cin.tie(nullptr);int n, m;cin n m;MaxFlow flow(n * 2);for (int i 0; i m; i) {int u, v;cin u v;u - 1, v - 1;flow.add_edge(v n, u, INF);flow.add_edge(u n, v, INF);}for (int v 0; v n; v) {int c;cin c;flow.add_edge(v, v n, c);}cout flow.max_flow(0 n, n - 1) \n;vectorint used(2 * n);auto dfs [](auto dfs, int v) - void {used[v] 1;for (auto [to, cap, _] : flow.g[v]) {if (cap 0 !used[to]) {dfs(dfs, to);}}};dfs(dfs, 0 n);vectorint vs;for (int v 0; v n; v) {if (used[v] !used[v n]) {vs.push_back(v);}}cout (int)vs.size() \n;for (int v : vs) {cout v 1 ;}cout \n;return 0; }
http://www.dnsts.com.cn/news/180257.html

相关文章:

  • 茶艺馆网站中建八局第二建设有限公司
  • 性病医院网站优化服务商央企门户网站哪家做的最好
  • 宁夏枸杞网站建设方案上海网站营销怎么样
  • 深圳网站建设黄浦网络-骗钱加强纪检监察网站建设
  • 河北中冶润丰建设股份有限公司网站商标购买网商标
  • 被他人备案后做违法网站山西网站开发二次开发
  • 拓者设计吧邀请码免费网页设计就是做网站优化的吗
  • 3d在线设计网站做黑彩网站能赚钱吗
  • 阿里云如何添加新网站卖文具做网站好还是做电商好
  • 贵州网站集约化建设许昌网站制作公司
  • 百度收录网站关键字wordpress做门户网
  • 有哪些网站是用vue做的济南天桥区网站建设
  • 中卫建设厅网站做网站前期需要准备什么
  • 家居企业网站建设机构笑话网站模版
  • 商务网站规划与网页制作网站网站怎么优化关键词排名
  • 网站备案要如何取消室内设计效果图制作教程
  • 模块网站需要多少钱怎么做平台网站吗
  • 大型网站外链是怎么建设的建设银行官网入口
  • 贵阳做网站方舟网络网站保定网站建设多少钱
  • 做体育网站做会所网站的
  • 湖北建设厅行政服务中心网站网站上线流程
  • 德源网站建设凡科网站可以做淘宝客吗
  • 洋洋点建站net网站建设教程
  • 目前建设网站做直播网站需要多少钱
  • 做底单的网站怎样做好网站用户体验
  • 我司网站改版上线网站建设wordpress后台排版错乱
  • 怎么在网站里做网页山东鲁桥建设有限公司网站
  • 广东省建设教育协会官方网站区块链app定制
  • 江都建设局网站网站平台搭建技术
  • 外发加工网有哪些北京中文seo