信与信封问题 SSL_1331(最大匹配)
来源:互联网 发布:php socket可以做什么 编辑:程序博客网 时间:2024/06/05 00:21
Description
John先生晚上写了n封信,并相应地写了n个信封将信装好,准备寄出。但是,第二天John的儿子Small John将这n封信都拿出了信封。不幸的是,Small John无法将拿出的信正确地装回信封中了。
将Small John所提供的n封信依次编号为1,2,…,n;且n个信封也依次编号为1,2,…,n。假定Small John能提供一组信息:第i封信肯定不是装在信封j中。请编程帮助Small John,尽可能多地将信正确地装回信封。
Input
第一行是一个整数n(n≤100)。信和信封依次编号为1,2,…,n。
接下来的各行中每行有2个数i和j,表示第i封信肯定不是装在第j个信封中。文件最后一行是2个0,表示结束。
Output
输出的各行中每行有2个数i和j,表示第i封信肯定是装在第j个信封中。请按信的编号i从小到大顺序输出。若不能确定正确装入信封的任何信件,则输出“none”。
Sample Input
3
1 2
1 3
2 1
0 0
Sample Output
1 1
var link:array[0..101] of longint; cover:array[0..101] of boolean; map:array[0..101,0..101] of boolean; i,j,k,n,m,x,y:longint; ans:boolean;function find(i:longint):boolean; var k,q:longint;begin find:=true; for k:=1 to n do if (map[i,k]) and (not(cover[k])) then begin q:=link[k]; link[k]:=i; cover[k]:=true; if (q=0)or (find(q)) then exit; link[k]:=q; end; exit(false);end;begin readln(n); x:=1; y:=1; fillchar(map,sizeof(map),true); while (x<>0) and (y<>0) do begin readln(x,y); map[y,x]:=false; end; for i:=1 to n do begin fillchar(cover,sizeof(cover),false); find(i); end; for i:=1 to n do begin y:=link[i]; link[i]:=0; map[y,i]:=false; fillchar(cover,sizeof(cover),false); if not(find(y)) then begin link[i]:=y; writeln(i,' ',y); ans:=true; end; map[y,i]:=true; end; if ans=false then writeln('none');end.
阅读全文
0 0
- 信与信封问题 SSL_1331(最大匹配)
- 信与信封问题 最大匹配
- SSL 1331 信与信封 最大匹配
- Wikioi 1222 信与信封问题(二分图匹配)
- 信与信封问题----------完美匹配
- 信与信封问题_codevs1222_匹配
- 信与信封问题
- 信与信封问题
- 信与信封问题
- 信与信封问题
- 信与信封问题
- 1222 信与信封问题(二分图匹配)
- Codevs 1222 信与信封问题 二分图匹配
- [codevs1222]信与信封问题(匈牙利)
- codevs 1222 信与信封问题(二分图匹配,匈牙利算法)
- codevs 1222 信与信封问题(二分图的完美匹配)
- 信与信封问题(二分图完美匹配变式)
- codevs 1222 信与信封问题(二分图匹配 可确定的关系)
- 烦人的幻灯片
- 数组中的最长连续序列
- Maximum Subarray
- WPF下Window设置WindowStyle="None"时实现鼠标拖动移动窗口位置
- Java中为什么long能自动转换成float类型
- 信与信封问题 SSL_1331(最大匹配)
- python dlib学习(十):换脸
- mysql换行与textarea换行中的坑(textarea与mysql数据不一致)
- Linux如何查看所有的用户和组信息
- 信与信封问题
- 《Java 编程技巧1001条》第401条 排序数组中的不同对象
- 语音识别——离线开源工具(CMU Sphinx)
- 【scala 特质】Scala的Trait特质使用
- Tilemap 使用 Composite Collider 2D