博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
pku1274 The Perfect Stall
阅读量:7119 次
发布时间:2019-06-28

本文共 1407 字,大约阅读时间需要 4 分钟。

有n头牛,m个牛栏,其中每头牛都有自己愿意去的牛栏,求牛和牛栏的最大匹配。

简单的二分图裸题,居然调了1节课,数据会阴人啊!!

每行第一个数是说这一行接下来有多少个数,可是这些数完了这一行还有数,用read就悲催了!

View Code
1 program pku1274(input,output);  2 var  3    f   : array[0..301,0..301] of boolean;  4    v   : array[0..301] of boolean;  5    lk  : array[0..301] of longint;  6    n,m : longint;  7 procedure init;  8 var  9    i,j,x,y : longint; 10 begin 11    readln(n,m); 12    fillchar(f,sizeof(f),false); 13    fillchar(lk,sizeof(lk),0); 14    for i:=1 to n do 15    begin 16       read(x); 17       for j:=1 to x do 18       begin 19      read(y); 20      f[i,y]:=true; 21       end; 22       readln;//就在这里,你把这行删了就WA 23    end; 24 end; {
init } 25 function find(now :longint ):boolean; 26 var 27 i : longint; 28 begin 29 for i:=1 to m do 30 if (f[now,i])and(not v[i]) then 31 begin 32 v[i]:=true; 33 if (lk[i]=0)or(find(lk[i])) then 34 begin 35 lk[i]:=now; 36 exit(true); 37 end; 38 end; 39 exit(false); 40 end; {
find } 41 function main():longint; 42 var 43 i : longint; 44 begin 45 main:=0; 46 for i:=1 to n do 47 begin 48 fillchar(v,sizeof(v),false); 49 if find(i) then 50 inc(main); 51 end; 52 end; {
main } 53 begin 54 while not eof do 55 begin 56 init; 57 writeln(main); 58 end; 59 end.

转载于:https://www.cnblogs.com/neverforget/archive/2012/03/01/2375269.html

你可能感兴趣的文章
区块链技术与比特币
查看>>
TypeScript--函数
查看>>
【CuteJavaScript】Angular6入门项目(1.构建项目和创建路由)
查看>>
Three.js Scene Graph
查看>>
构造函数创建私有变量(防继承)
查看>>
PAT A1045 动态规划
查看>>
前端技术周刊 2019-02-11 Serverless
查看>>
DAppDiscover | 盘点2018年度十大DAPP
查看>>
Ghost配置6——首页太阳系动画效果
查看>>
css加载会造成阻塞吗
查看>>
【跃迁之路】【712天】程序员高效学习方法论探索系列(实验阶段469-2019.2.2)...
查看>>
刷前端面经笔记(十一)
查看>>
关于"a"+"b"共创建了几个对象的问题
查看>>
【跃迁之路】【716天】程序员高效学习方法论探索系列(实验阶段473-2019.2.6)...
查看>>
区块链安全的奥秘之一:非对称加密
查看>>
Salesforce平台支持多租户Multi tenant的核心设计思路
查看>>
最佳在线图表软件
查看>>
手挽手带你学React:三档 React-router4.x的使用
查看>>
React Hooks 梳理
查看>>
垃圾回收之引用计数
查看>>