uva1572——自组(World Final 2013,图论模型)

这篇博客探讨了UVA1572问题的解决方案,重点在于其巧妙的图论模型和输入匹配代码。通过将A+、A-映射为2n和2n+1,利用反转性质(2n)^1=2n+1, (2n+1)^1=2n,构建次有向图并寻找环。内容适合ACM竞赛爱好者和图论学习者。" 122385510,10576118,动态数组与线性表实现及栈的应用解析,"['数据结构', '算法', '动态数组', '线性表', '栈']
摘要由CSDN通过智能技术生成

///
作者:tt2767
声明:本文遵循以下协议自由转载-非商用-非衍生-保持署名|Creative Commons BY-NC-ND 3.0
查看本文更新与讨论请点击:http://blog.csdn.net/tt2767
链接被删请百度: CSDN tt2767
///


这题值得学习的几点:
1.输入匹配的代码十分优美!
2.把A+,A-映射成2n,2n+1做,然后通过(2n)^1 = 2n+1 , (2n+1)^1 = 2n 来反转,不得不说十分精妙!

题解:由于正方形是无限的,把要去连接编号与被链接的正方形上的其他可扩展编号看成节点,被链接的正方形看成边,寻找次有向图的环。
题目中的例子:
A- |->->->->->->->->->->A+|->->->->->->->->(A+,A+,00)
要连接的节点————两正方形连接点————被链接的正方形的其他节点

#include<cstdio>
#include<cstring>

int G[60][60];
int vis[60];

//把A+-变成2n和2n+1
int
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值