USACO-Section 1.3 Wormholes[搜索]

农夫约翰的高能物理实验导致农场出现N个虫洞,形成N/2对连接。当物体进入虫洞时,会从配对的虫洞出来,可能造成无限循环。例如,贝茜从(2,1)出发,会陷入虫洞A(1,1)和B(3,1)的循环中。题解采用深度搜索算法,寻找所有可能的虫洞配对,判断是否形成死循环,即移动n次后仍在原位置。" 131200043,1477485,WinDbg内存分析入门:安装与基本操作,"['系统安全', '网络安全', 'windows调试', '内存分析']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题意:
农夫约翰爱好在周末进行高能物理实验的结果却适得其反,导致农场上产生了N个虫洞(2<=N<=12,n是偶数),每个在农场二维地图的一个不同点。
根据他的计算,约翰知道他的虫洞将形成 N/2 连接配对。例如,如果A和B的虫洞连接成一对,进入虫洞A的任何对象体将从虫洞B出去,朝着同一个方向,而且进入虫洞B的任何对象将同样从虫洞A出去,朝着相同的方向前进。这可能发生相当令人不快的后果。
例如,假设有两个成对的虫洞A(1,1) 和 B(3,1),贝茜从(2,1)开始朝着 +x 方向(右)的位置移动。贝茜将进入虫洞 B(在(3,1)),从A出去(在(1,1)),然后再次进入B,困在一个无限循环中!
| … .
| A > B . 贝茜会穿过B,A,
+ … . 然后再次穿过B

题解:
深度搜索 找到所有两两配对的组合;
因为出了虫洞只能向右走,所以每次出洞其右侧必须还有虫洞,达到n次移动则是死循环。

/*
ID:jsntrdy1
PROG: wormhole
LANG: C++
*/
#include<cstdio>
#include<iostream>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值