3396: [Usaco2009 Jan]Total flow 水流

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 179  Solved: 73
[Submit][Status]

Description

 

Input

第1行输入N,之后N行每行描述一条水管,前两个英文字母表示水管的两端(大小写字母是不一样的),后一个整数表示水管的流量,流量不会超过1000.

Output

一个整数,表示总流量.

Sample Input

5
A B 3
B C 3
C D 5
D Z 4
B Z 6

Sample Output

3

HINT

 

Source

Silver

题解:WA了6次再读题才发现大小写字母不一样TT。别的没了,直接上sap模板A之。。

  1. type
  2. point=^node;
  3. node=record
  4. g,w:longint;
  5. next,anti:point;
  6. end;
  7. var
  8. i,j,k,l,m,n,ans,s,t:longint;
  9. a:array[..] of point;
  10. d,dv:array[..] of longint;
  11. c1,c2,c3:char;
  12. function min(x,y:longint):longint;inline;
  13. begin
  14. if x<y then min:=x else min:=y;
  15. end;
  16. procedure add(x,y,z:longint);inline;
  17. var p:point;
  18. begin
  19. new(p);p^.g:=y;p^.w:=z;p^.next:=a[x];a[x]:=p;
  20. new(p);p^.g:=x;p^.w:=;p^.next:=a[y];a[y]:=p;
  21. a[y]^.anti:=a[x];a[x]^.anti:=a[y];
  22. end;
  23. function dfs(x,flow:longint):longint;inline;
  24. var p:point;k:longint;
  25. begin
  26. if x=t then exit(flow);
  27. dfs:=;p:=a[x];
  28. while p<>nil do
  29. begin
  30. if (P^.w>) and (d[x]=(d[p^.g]+)) then
  31. begin
  32. k:=dfs(p^.g,min(p^.w,flow-dfs));
  33. dec(p^.w,k);
  34. inc(p^.anti^.w,k);
  35. inc(dfs,k);
  36. if dfs=flow then exit;
  37. end;
  38. p:=p^.next;
  39. end;
  40. if d[s]=n then exit;
  41. dec(dv[d[x]]);
  42. if dv[d[x]]= then d[s]:=n;
  43. inc(d[x]);
  44. inc(dv[d[x]]);
  45. end;
  46. function trans(x:char):longint;inline;
  47. begin
  48. case x of
  49. 'A'..'Z':exit(ord(x)-ord('A')+);
  50. 'a'..'z':exit(ord(x)-ord('a')+);
  51. end;
  52. end;
  53. function getc:longint;inline;
  54. begin
  55. repeat
  56. read(c1);
  57. until (upcase(c1)>='A') and (upcase(c1)<='Z');
  58. exit(trans(c1));
  59. end;
  60. begin
  61. readln(m);n:=;
  62. for i:= to n do a[i]:=nil;
  63. s:=;t:=;
  64. for i:= to m do
  65. begin
  66. j:=getc;k:=getc;readln(l);
  67. add(j,k,l);
  68. end;
  69. fillchar(d,sizeof(d),);
  70. fillchar(dv,sizeof(dv),);
  71. dv[]:=n;
  72. ans:=;
  73. while d[s]<n do inc(ans,dfs(s,maxlongint));
  74. writeln(ans);
  75. end.

3396: [Usaco2009 Jan]Total flow 水流的更多相关文章

  1. 【BZOJ】3396: [Usaco2009 Jan]Total flow 水流 (最大流)

    http://www.lydsy.com/JudgeOnline/problem.php?id=3396 裸的最大流跑过.. #include <cstdio> #include < ...

  2. bzoj 3396: [Usaco2009 Jan]Total flow 水流【最大流】

    最大流生动形象的板子,注意数组开大点 #include<iostream> #include<cstdio> #include<queue> #include< ...

  3. BZOJ3396: [Usaco2009 Jan]Total flow 水流

    3396: [Usaco2009 Jan]Total flow 水流 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 45  Solved: 27[Sub ...

  4. 【网络流】【Dinic】【最大流】bzoj3396 [Usaco2009 Jan]Total flow 水流

    #include<cstdio> #include<cstring> #include<algorithm> #include<queue> using ...

  5. bzoj 1576: [Usaco2009 Jan]安全路经Travel 树链剖分

    1576: [Usaco2009 Jan]安全路经Travel Time Limit: 10 Sec  Memory Limit: 64 MB Submit: 665  Solved: 227[Sub ...

  6. BZOJ3394: [Usaco2009 Jan]Best Spot 最佳牧场

    3394: [Usaco2009 Jan]Best Spot 最佳牧场 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 11  Solved: 9[Sub ...

  7. 1574: [Usaco2009 Jan]地震损坏Damage

    1574: [Usaco2009 Jan]地震损坏Damage Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 425  Solved: 232[Subm ...

  8. 2018.07.06 洛谷P2936 [USACO09JAN]全流Total Flow(最大流)

    P2936 [USACO09JAN]全流Total Flow 题目描述 Farmer John always wants his cows to have enough water and thus ...

  9. 洛谷——P2936 [USACO09JAN]全流Total Flow

    题目描述 Farmer John always wants his cows to have enough water and thus has made a map of the N (1 < ...

随机推荐

  1. Dockerfile的书写规则及指令使用方法

    Dockfile是一种被Docker程序解释的脚本,Dockerfile由一条一条的指令组成,每条指令对应Linux下面的一条命令.Docker程序将读取Dockerfile,根据指令生成定制的ima ...

  2. DotNet加密方式解析--非对称加密

    新年新气象,也希望新年可以挣大钱.不管今年年底会不会跟去年一样,满怀抱负却又壮志未酬.(不过没事,我已为各位卜上一卦,卦象显示各位都能挣钱...).已经上班两天了,公司大部分人还在休假,而我早已上班, ...

  3. Tomcat的安装配置与JavaWeb入门教程

    本文开发环境: windos7 , Eclipse-mars , JDK1.7 , Tomcat7.0 1.关于Tomcat 先来看一段Tomcat的介绍: Tomcat是Apache 软件基金会(A ...

  4. linux 进程间通信 之fifo

    上一篇博客已经介绍了一种进程间通信的方式,但是那只是针对于有血缘关系的进程,即父子进程间的通信,那对于没有血缘关系的进程,那要怎么通信呢?  这就要创建一个有名管道,来解决无血缘关系的进程通信, fi ...

  5. c#入门系列——基础篇

    c#与VB的区别 刚接触c#发现c#与vb还是有所不同的--它可以在控制台显示.它比vb多出来了一些东西.代码规范上跟VB也稍有不同.....暂时就发现这么多,正在努力发现中. c#的代码结构     ...

  6. Linux编程之ICMP洪水攻击

    我的上一篇文章<Linux编程之PING的实现>里使用ICMP协议实现了PING的程序,ICMP除了实现这么一个PING程序,还有哪些不为人知或者好玩的用途?这里我将介绍ICMP另一个很有 ...

  7. 毕向东udp学习笔记1

    参看了毕向东老师的视频教程,准备直接用EditPlus记事本来直接敲Java代码,好好学习一下udp部分,GUI部分,线程部分,加油 项目功能: 实现udp简单的发送接收功能. 当使用EditPlus ...

  8. 谷歌YSlow准则

    谷歌YSlow准则 YSlow可以对网站的页面进行分析,并告诉你为了提高网站性能,如何基于某些规则而进行优化. 测试个人站点 通过测试个人站点可以获得下面的数据 23条准则 Make fewer HT ...

  9. 提升iOS审核通过率之“IPv6兼容测试”

    作者:jingle 腾讯系统测试工程师 商业转载请联系腾讯WeTest授权,非商业转载请注明出处. 原文链接:http://wetest.qq.com/lab/view/285.html 一.背景 在 ...

  10. python数据结构(一)------序列

    数据结构是通过某种方式(例如对元素进行编号)组织在一起的数据元素的集合:在Python中,最基本的数据结构是序列(sequence),序列中的每个元素被分配一个序列号--即元素的位置,也称为索引. p ...