1497

思路:

  最小割;

来,上代码:

#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>using namespace std;#define maxn 55005
#define maxm 1005005
#define INF 0x7fffffffint deep[maxn],que[maxm],F[maxm],cnt=1;
int n,m,s,t=maxn-1,head[maxn],E[maxm],V[maxm];inline void in(int &now)
{char Cget=getchar();now=0;while(Cget>'9'||Cget<'0') Cget=getchar();while(Cget>='0'&&Cget<='9'){now=now*10+Cget-'0';Cget=getchar();}
}inline void edge_add(int u,int v,int f)
{E[++cnt]=head[u],V[cnt]=v,F[cnt]=f,head[u]=cnt;E[++cnt]=head[v],V[cnt]=u,F[cnt]=0,head[v]=cnt;
}inline bool bfs()
{memset(deep,-1,sizeof(deep));int h=0,tail=1;que[0]=s,deep[s]=0;while(h<tail){int now=que[h++];for(int i=head[now];i;i=E[i]){if(F[i]>0&&deep[V[i]]<0){deep[V[i]]=deep[now]+1;if(V[i]==t) return true;que[tail++]=V[i];}}}return false;
}int flowing(int now,int flow)
{if(now==t||flow<=0) return flow;int oldflow=0;for(int i=head[now];i;i=E[i]){if(F[i]>0&&deep[V[i]]==deep[now]+1){int pos=flowing(V[i],min(flow,F[i]));flow-=pos,oldflow+=pos;F[i]-=pos,F[i^1]+=pos;if(flow==0) return oldflow;}}if(oldflow==0) deep[now]=-1;return oldflow;
}int main()
{in(n),in(m);int pos,u,v,sum=0;for(int i=1;i<=n;i++) in(pos),edge_add(s,i,pos);for(int i=1;i<=m;i++){in(u),in(v),in(pos);sum+=pos;edge_add(u,i+n,INF);edge_add(v,i+n,INF);edge_add(i+n,t,pos);}pos=0;while(bfs()) pos+=flowing(s,INF);cout<<sum-pos;return 0;
}

转载于:https://www.cnblogs.com/IUUUUUUUskyyy/p/6741707.html

AC日记——[NOI2006]最大获利 bzoj 1497相关推荐

  1. AC日记——Mato的文件管理 bzoj 3289

    3289 思路: 莫队求区间逆序对个数,树状数组维护: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 500 ...

  2. BZOJ1497: [NOI2006]最大获利

    BZOJ1497: [NOI2006]最大获利 Description 新的技术正冲击着手机通讯市场,对于各大运营商来说,这既是机遇,更是挑战. THU集团旗下的CS&T通讯公司在新一代通讯技 ...

  3. 【BZOJ】1497: [NOI2006]最大获利 最大权闭合子图或最小割

    [题意]给定n个点,点权为pi.m条边,边权为ci.选择一个点集的收益是在[点集中的边权和]-[点集点权和],求最大获利.n<=5000,m<=50000,0<=ci,pi<= ...

  4. 【BZOJ 1497】 [NOI2006]最大获利

    Description 新的技术正冲击着手机通讯市场,对于各大运营商来说,这既是机遇,更是挑战.THU集团旗下的CS&T通讯公司在新一代通讯技术血战的前夜,需要做太多的准备工作,仅就站址选择一 ...

  5. AC日记——[Hnoi2017]影魔 bzoj 4826

    4826 思路: 主席树矩阵加减+单调栈预处理: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 200005 ...

  6. AC日记——[HNOI2008]玩具装箱toy bzoj 1010

    1010 思路: 斜率优化DP: 跪烂大佬 代码: #include <bits/stdc++.h> using namespace std; #define maxn 50005 #de ...

  7. AC日记——[SCOI2010]游戏 bzoj 1854

    1854: [Scoi2010]游戏 Time Limit: 5 Sec  Memory Limit: 162 MB Submit: 4938  Solved: 1948 [Submit][Statu ...

  8. AC日记——Count on a tree bzoj 2588

    Description 给定一棵N个节点的树,每个点有一个权值,对于M个询问(u,v,k),你需要回答u xor lastans和v这两个节点间第K小的点权.其中lastans是上一个询问的答案,初始 ...

  9. AC日记——[ZJOI2009]狼和羊的故事 bzoj 1412

    1412 思路: 最小割: 狼作为一个点集a,空领地作为点集b,羊作为点集c: s向a连边,c向t连边,a向b连边,b向b连边,b向c连边: 如何理解最小割? a,c之间割掉最少的路径(栅栏)使其没有 ...

最新文章

  1. 在线分析|在线做随机森林分析
  2. PHP快速入门教程:for循环
  3. 用VBA去除Excel工作表保护密码
  4. Android Studio新手教程
  5. gateway中的局部过滤器_SpringCloud系列Gateway:过滤器总结
  6. 运维工程师到底是做什么的?
  7. 量化交易 均线、金叉死叉计算与交易策略
  8. CoMP 协同多点传输技术
  9. 机器学习期中考复习(md全是证明题)
  10. Response to preflight request do‘nt access control check: Redirect is not allow for a preflight re.
  11. matlab中eacf函数,基于MATLAB的切比雪夫I型模拟低通滤波器设计
  12. 高性能零售IT系统的建设03-监控体系化的重要不亚于开发的投入
  13. 研发漫画之二:救火还需纵火犯
  14. 职称申报评审管理系统_《四川省职称评审管理暂行办法》出台
  15. ubuntu下安装bochs
  16. linux查看端口pvid,关于PVID的几个疑问
  17. 树莓派4B-安装远程桌面TeamViewer
  18. 全球前40位最大医疗器械公司排名
  19. mysql的可视化图表_利用ECharts可视化mysql数据库中的数据
  20. Struts2框架搭建

热门文章

  1. shell学习之awk或gawk
  2. Java ---- baidu评价抽取关键词-商品评论
  3. percona-toolkit源码编译安装
  4. 架构师速成8.3-可用性之分库分表
  5. java的类加载器ClassLoader
  6. apache、nginx验证
  7. redis数据库无法写入导致的bug
  8. 2011年国外最受欢迎的15个音乐网站
  9. 网上课程之实例讲解(2)
  10. Redis master和slave是如何实现数据同步的