[USACO07OPEN] Dining G

news/2024/11/14 16:36:10/文章来源:https://www.cnblogs.com/watersail/p/18546284
  • 和过去的自己不期而遇
  • 需要进行点边转化以限制1头牛至多只产生1的贡献
点击查看代码
#include <bits/stdc++.h>
using namespace std;
vector<int>a[1005],c[1005],h[1005];
int cur[1005],d[1005];
int s=0,t=1000;
queue<int>q;
int read1()
{char cc=getchar();while(!(cc>=48&&cc<=57)){if(cc=='-'){break;}cc=getchar();}bool f=false;int s=0;if(cc=='-'){f=true;}else{s=cc-48;}while(1){cc=getchar();if(cc>=48&&cc<=57){s=s*10+cc-48;}else{break;}}if(f==true){s=-s;}return s;
}
void add(int u,int v,int w)
{a[u].push_back(v);a[v].push_back(u);c[u].push_back(w);c[v].push_back(0);h[u].push_back(a[v].size()-1);h[v].push_back(a[u].size()-1);return;
}
bool bfs()
{memset(d,0,sizeof(d));while(!q.empty()){q.pop();}q.push(s);d[s]=1;while(!q.empty()){int n1=q.front();q.pop();for(int i=0;i<a[n1].size();i++){if(c[n1][i]!=0&&d[a[n1][i]]==0){d[a[n1][i]]=d[n1]+1;q.push(a[n1][i]);if(a[n1][i]==t){return true;}}}}return false;
}
int dinic(int n1,int flow)
{if(n1==t){return flow;}int rest=flow;for(int i=cur[n1];i<a[n1].size();i++){cur[n1]=i;if(c[n1][i]!=0&&d[a[n1][i]]==d[n1]+1){int k=dinic(a[n1][i],min(rest,c[n1][i]));if(k==0){d[a[n1][i]]=0;continue;}c[n1][i]-=k;c[a[n1][i]][h[n1][i]]+=k;rest-=k;if(rest==0){break;}}}return flow-rest;
}
int main()
{
//	freopen(".in","r",stdin);
//	freopen(".out","w",stdout);int n,F,D;cin>>n>>F>>D;for(int i=1;i<=F;i++){add(s,i,1);}for(int i=1;i<=n;i++){add(F+i,F+n+i,1);}for(int i=1;i<=D;i++){add(F+2*n+i,t,1);}for(int i=1;i<=n;i++){int f=read1(),d=read1();for(int j=1;j<=f;j++){int w=read1();add(w,F+i,1);}for(int j=1;j<=d;j++){int w=read1();add(F+n+i,F+2*n+w,1);}}int ans=0,flow=0;while(bfs()){memset(cur,0,sizeof(cur));while(flow=dinic(s,INT_MAX)){ans+=flow;}}cout<<ans<<endl;return 0;
}
/*
图中的点有容量限制
每头牛只享用一种食物和一种饮料
*/

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

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

相关文章

Assignment pg walkthrough Easy 通配符提权变种

nmap 扫描 ┌──(root㉿kali)-[~] └─# nmap -p- -A 192.168.157.224 Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-11-14 04:18 UTC Stats: 0:00:53 elapsed; 0 hosts completed (1 up), 1 undergoing Service Scan Service scan Timing: About 66.67% done; ETC: 0…

变量的存储方式和生存期

变量的存储方式和生存期变量的存储方式和生存期 动态存储方式与静态存储方式 从变量的作用域(即从空间)的角度来观察,变量可以分为全局变量和局部变量 从变量存在的时间(即生存期)来观察:有的变量在程序运行的整个过程都是存在的,而有的变量则是在调用其所在的函数时才临…

Whalestudio助力西南某商业银行数据中台建设 | 实践探索

在数字化转型的浪潮下,银行业对数据的依赖日益加深。为提升数据管理和应用水平,西南某城商行于2022年启动了数据中台建设,采用创新技术手段优化其数据服务体系。 本文将深入探讨该行如何借助Whalestudio平台构建数据中台,以及在实际应用中取得的显著成效。 从需求到选择:数…

详解漏斗模型及如何通过行为设计提升转化率

详解漏斗模型及如何通过行为设计提升转化率 | 人人都是产品经理 https://www.woshipm.com/pd/1695380.html 详解漏斗模型及如何通过行为设计提升转化率2018-12-05 3 评论63515 浏览267 收藏12 分钟 漏斗模型,是一种数据分析方式,是一个线性流程,更是一种普遍适用的方法论,或…

【FMC155A】基于VITA57.1标准的2路500MSPS/1GSPS/1.25GSPS 14位AD采集FMC子卡模块(交流耦合)

​板卡概述 FMC155A是一款基于VITA57.1标准的,实现2路14-bit、500MSPS/1GSPS/1.25GSPS 采样率交流耦合ADC同步采集FMC子卡模块。该模块遵循VITA57.1规范,可直接与FPGA载卡配合使用,板卡ADC器件采用ADI的AD9680芯片,该芯片具有两个模拟输入通道和两个JESD204B输出数据通道对…

在华为开发者空间,简单几步带你实现AI风格化编程

通过调用ModelArts上的动漫头像制作应用,将头像图片转化为动漫风格的头像图片。本文分享自华为云社区《【开发者空间实践指导】基于FunctionGraph的AI风格化编程》,作者:开发者空间小蜜蜂。 一、 案例介绍 本实验基于FunctionGraph和ModelArts的智能头像动漫化处理应用。通过…

皮带跑偏识别智慧矿山一体机皮带运行状态识别如何与EasyCVR平台搭建煤矿矿井安全监控系统?

在煤矿行业,安全始终是最为关键的议题。随着智能化技术的发展,智慧矿山一体机与EasyCVR平台的结合为煤矿矿井安全监控系统提供了一种全新的解决方案。这种集成化的系统不仅能够实现对煤矿生产过程的实时监控和管理,还能提高矿山的安全性和生产效率,同时降低人工巡检的成本和…

vmstat的使用

1.用法 vmstat [-a] [-n] [-S unit] [delay [ count]] vmstat [-s] [-n] [-S unit] vmstat [-m] [-n] [delay [ count]] vmstat [-d] [-n] [delay [ count]] vmstat [-p disk partition] [-n] [delay [ count]] vmstat [-f] vmstat [-V] -a:显示活跃和非活跃内存 -f:显示从系…

PNP和NPN三极管区别

主要区别是电流流向和电压不同:1. PNP管子是发射极流入后从基极和集电极流出,NPN管子是基极和集电极流入从发射极流出。 2. PNP管子工作在放大区时电压是,Ue>Ub>Uc,NPN管子工作在放大区时电压时Uc>Ub>Ue。 3. PNP是共阴极,即两个PN结的N结相连做为基极,…

关于伺服电子齿轮比

一、首先是术语解释: 1.编码器分辨率:多少个脉冲每转。如分辨率为18位,代表需要发262144个脉冲转一圈。2.脉冲当量:发一个脉冲,电机能走多少距离,也就是电机的最小精度。 3.丝杆螺距:表示丝杆转一圈多少毫米。 4.减速比:A(从轮):B(主轮) 5.电子齿轮比:分子是电机编码器…

ubuntu destop修改终端字体大小(Terminal)

背景 初始字体太大,窗口小,看不了几行 调整效果舒服多了 可根据自己的需要做调整

CBT

设置扬声器阵列,预先设置扬声器阵列的覆盖角 根据扬声器阵列的覆盖角得到截止频率F 将音频信号小于截止频率F的频段采用空间重采样法进行恒定束宽控制;将音频信号大于或等于截止频率F的频段采用CBT阵列理论进行恒定束宽控制;基本流程图如下:step1: 首先,确定系统参数. 根据…