P1344-[USACO4.4]追查坏牛奶Pollutant Control【网络流,最小割】

正题

题目链接:https://www.luogu.org/problemnew/show/P1344


题目大意

要求1不能到n点需要去掉的边的权值之和最小,在这样的情况下求最少去掉的边。


解题思路

对于每条边的边权分为两部分一个是权值,一个是割掉的数量,然后前者比后者优先。

那么对于每个权值www,就定义为w∗E+1(E>n)w*E+1(E>n)wE+1(E>n)

这样就分为了w/Ew/Ew/Ew%Ew\%Ew%E两部分


codecodecode

#include<cstdio>
#include<algorithm>
#include<cstring>
#include<queue>
#define ll long long
using namespace std;
const ll N=320,M=10010,inf=1e18,cs=2333;
struct node{ll to,next,w;
}a[M*2];
ll tot=1,n,s,t,m,ans;
ll dep[N],ls[N];
queue<int> q;
void addl(ll x,ll y,ll w)
{a[++tot].to=y;a[tot].next=ls[x];ls[x]=tot;a[tot].w=w;a[++tot].to=x;a[tot].next=ls[y];ls[y]=tot;a[tot].w=0;
}
bool bfs()
{memset(dep,0,sizeof(dep));while(!q.empty()) q.pop();q.push(s);dep[s]=1;while(!q.empty()){ll x=q.front();q.pop();for(ll i=ls[x];i;i=a[i].next){ll y=a[i].to;if(!dep[y]&&a[i].w){dep[y]=dep[x]+1;if(y==t) return true;q.push(y);}}}return false;
}
ll dinic(ll x,ll flow)
{ll rest=0,k;if(x==t) return flow;for(ll i=ls[x];i;i=a[i].next){ll y=a[i].to;if(dep[x]+1==dep[y]&&a[i].w){rest+=(k=dinic(y,min(a[i].w,flow-rest)));a[i].w-=k;a[i^1].w+=k;if(rest==flow) return flow;}}if(!rest) dep[x]=0;return rest;
}
void netflow()
{while(bfs())ans+=dinic(s,inf);
}
int main()
{scanf("%lld%lld",&n,&m);s=1;t=n;for(ll i=1;i<=m;i++){ll x,y,w;scanf("%lld%lld%lld",&x,&y,&w);w=w*cs+1;addl(x,y,w);}netflow(); printf("%lld %lld",ans/cs,ans%cs);
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/322563.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

redis配置密码

redis没有实现访问控制这个功能&#xff0c;但是它提供了一个轻量级的认证方式&#xff0c;可以编辑redis.conf配置来启用认证。 1、初始化Redis密码&#xff1a; 在配置文件中有个参数&#xff1a; requirepass 这个就是配置redis访问密码的参数&#xff1b; 比如 requirep…

禁用Cookie后,Session怎么样使用

转载自 禁用Cookie后&#xff0c;Session怎么样使用 在上篇中更多的是在分析通过Session Cookie这一方式&#xff0c;在每次请求时都将 sessionId以Cookie的形式发到服务端&#xff0c;来保持一致。这也是许多人印象中的 Session在浏览器关闭之后就失效这一说法的来源。 其…

ASP.NET MVC使用Oauth2.0实现身份验证

随着软件的不断发展&#xff0c;出现了更多的身份验证使用场景&#xff0c;除了典型的服务器与客户端之间的身份验证外还有&#xff0c;如服务与服务之间的(如微服务架构)、服务器与多种客户端的(如PC、移动、Web等)&#xff0c;甚至还有需要以服务的形式开放给第三方的&#x…

尽力去帮助一个陌生人

看到群里发布的家里母亲患癌的情况&#xff0c;心里很是触动&#xff0c;我想尽力去帮助他们 去沟通&#xff0c;了解具体情况&#xff0c;去办公室找王主任确认并了解相关事宜 我的想法是在与学校沟通之后&#xff0c;在应数专业内&#xff0c;做一个地推&#xff0c;让同学们…

P3575-[POI2014]DOO-Around the world【环形dp】

正题 题目大意:https://www.luogu.org/problemnew/show/P3575 题目大意 一个环&#xff0c;上面有若干个点&#xff0c;若干个询问xxx。 表示上一个降落点和下一个降落点距离不能超过xxx&#xff0c;然后求至少要降落多少次(起点可以任意) 解题思路 首先明显环形dpdpdp&…

Spring Boot API 接口文档 Swagger 入门

转载自 芋道 Spring Boot API 接口文档 Swagger 入门 摘要: 原创出处 http://www.iocoder.cn/Spring-Boot/Swagger/ 「芋道源码」欢迎转载&#xff0c;保留摘要&#xff0c;谢谢&#xff01; 本文在提供完整代码示例&#xff0c;可见 https://github.com/YunaiV/SpringBoot-Lab…

ICanPay 统一支付网关

https://github.com/hiihellox10/ICanPay 统一支付网关。对原代码优化。支持NET46和NETSTANDARD2_0。支持支付宝&#xff0c;微信&#xff0c;银联支付渠道通过Web&#xff0c;App&#xff0c;Wap&#xff0c;QRCode方式支付。简化订单的创建、查询、退款跟接收网关返回的支付通…

2021未来职业规划以及对过去的总结

我已经好久没写博客了&#xff0c;记得上次写博客还是去年很久的时候&#xff0c;转眼间&#xff0c;打开csdn&#xff0c;有好多评论和私信&#xff0c;都没来得及回复。这段时间真的很忙&#xff0c;但也的确是我人生中比较重要的时刻&#xff0c;有选择&#xff0c;有犹豫&a…

P2834-能力测验【数论,整除分块】

正题 题目链接:https://www.luogu.org/problemnew/show/P2834 题目大意 求∑i1n∑j1m(n%i)∗(m%j)∗(i!j)\sum_{i1}^n\sum_{j1}^m(n\%i)*(m\%j)*(i!j)i1∑n​j1∑m​(n%i)∗(m%j)∗(i!j) 解题思路 ∑i1n(n%i)∗∑j1m(m%j)−∑i1min{n,m}(n%i)∗(m%i)\sum_{i1}^n(n\%i)*\sum_{…

使用 dotnet core 和 Azure PaaS服务进行devOps开发(Web API 实例)

引子这一篇文章将用一个完整的实例&#xff0c;给大家介绍如何基于dotnet core&#xff08;微软.NET的最新版本&#xff0c;支持跨平台&#xff0c;跨设备的应用开发&#xff0c;详情请参考 https://www.microsoft.com/net 开发一个Web API Service&#xff0c;并且利用Azure的…

如何基于Canal 和 Kafka,实现 MySQL 的 Binlog 近实时同步

转载自 如何基于Canal 和 Kafka&#xff0c;实现 MySQL 的 Binlog 近实时同步 近段时间&#xff0c;业务系统架构基本完备&#xff0c;数据层面的建设比较薄弱&#xff0c;因为笔者目前工作重心在于搭建一个小型的数据平台。优先级比较高的一个任务就是需要近实时同步业务系统…

spring boot添加swagger步骤

在xml中添加如下代码 <dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.7.0</version></dependency><dependency><groupId>io.springfox</groupId><…

P1332,nssl1316-血色先锋军【bfs】

正题 题目链接:https://www.luogu.org/problemnew/show/P1332 题目大意 对于每个领主求与最近的感染源的距离 解题思路 那么水还要我讲&#xff1f;&#xff1f;&#xff1f; codecodecode #include<cstdio> #include<algorithm> #include<queue> using …

采用Opserver来监控你的ASP.NET项目系列(二、监控SQL Server与Asp.Net项目)

前言之前有过2篇关于如何监控ASP.NET core项目的文章,有兴趣的也可以看看.ASP.NET Core之跨平台的实时性能监控ASP.NET Core之跨平台的实时性能监控(2.健康检查)今天我们主要来介绍一下,如何使用Opserver监控我们的SQL Server 和ASP.NET项目的异常监控监控效果如下:SQL Server的…

Spring Boot 参数校验 Validation 入门

转载自 芋道 Spring Boot 参数校验 Validation 入门 本文在提供完整代码示例&#xff0c;可见 https://github.com/YunaiV/SpringBoot-Labs 的 lab-22 目录。 原创不易&#xff0c;给点个 Star 嘿&#xff0c;一起冲鸭&#xff01; 1. 概述 在想标题的时候&#xff0c;到底应该…

用turtle画皮卡丘

如何绘制皮卡丘 画左偏曲线函数 setheading属性的作用是什么&#xff1f; def radian_left(ang,dis,step,n):for i in range(n):disstep #dis增大stept.lt(ang) #向左转ang度t.fd(dis) #向前走dis的步长画右偏曲线函数 def radian_right(ang,dis,step,n):for i in range(n)…

nssl1317-灵魂分流药剂【分组背包,二维费用背包】

正题 题目大意 一个二维费用的分组背包 NoNoNo解题思路 codecodecode #include<cstdio> #include<algorithm> using namespace std; const int N110; int n,m,A,B,w[N],v[N],t[N],p[N],f[11][N][N]; int main() {scanf("%d%d%d%d",&n,&m,&…

Orchard Core一分钟搭建ASP.NET Core CMS

Orchard Core 是Orchard CMS的ASP.NET Core版本。Orchard Core是全新一代的ASP.NET Core CMS。官方文档介绍&#xff1a;http://orchardcore.readthedocs.io/en/latest/GitHub: https://github.com/OrchardCMS/OrchardCore下面快速开始搭建CMS新建项目打开VS2017 新建一个CMSWe…

在Linux系统上部署java web项目

将Spring boot项目打成jar包后放在服务器进行运行&#xff1a; 部署命令&#xff1a; nohup java -jar mybatis-0.0.1-SNAPSHOT.jar >output 2>&1 &查看进程&#xff1a; ps aux杀死服务器进程&#xff1a; kill -9 PID

nssl1318-地铁重组【dp】

正题 题目大意 n个东西依次进入一个容量为p的栈&#xff0c;求出栈的序列数量。 解题思路 设fi,jf_{i,j}fi,j​表示iii个已经进过栈了(不管还有没有出)&#xff0c;jjj个还在栈里。 首先是将现在这个进栈fi−1,j−1f_{i-1,j-1}fi−1,j−1​&#xff0c;然后是出栈fi,j1f_{i,…