[USACO1.3]虫洞wormhole 2021-11-25 大意 给定一些点,在横向穿过这些点时将会被传送回纵坐标相同的 y y y轴上,问有多少种情况会使得永远向右爬的虫子陷入死循环 思路 【[USACO1.3]虫洞wormhole】首先因为只会向右爬,所以我们只需将同一行上的点间连边,然后 d f s dfs dfs暴力找匹配,之后判环即可 代码 /* ID:hzbismy1 LANG:C++ TASK:wormhole */ #include #include #include #define x second #define y first using namespace std; int n,to[20],pre[20],ans; bool vis[20]; pairp[20]; inline bool check(register int k)//判环 { while(to[k]) { if(vis[k]) return true; vis[k]=true; k=pre[to[k]]; } return false; } inline void dfs(register int dep)//暴力找匹配 { if(dep>n) { for(register int i=1; i<=n; i++) { fill(vis+1,vis+1+n,0); if(check(i)){ans++; return; } } return; } if(pre[dep]) dfs(dep+1); else { for(register int i=dep+1; i<=n; i++) if(!pre[i]) { pre[i]=dep; pre[dep]=i; dfs(dep+1); pre[i]=0; pre[dep]=0; } } } signed main() { freopen("wormhole.in","r",stdin); freopen("wormhole.out","w",stdout); scanf("%d",&n); for(register int i=1; i<=n; i++) scanf("%d%d",&p[i].x,&p[i].y); sort(p+1,p+1+n); for(register int i=1; i 推荐阅读 引用是不是修辞手法之一 引用是修辞手法吗 “人,最大的修养:不随意评论别人,不随意干涉别人”你怎么看? 长安区有哪些街道 海尔空调全国维修电话多少 诈骗罪退脏不退罪 诈骗罪不退脏会追缴吗? python|python(55)-编码-解码-unicode到底是什么(+repr+) 上海特产有哪些送人好 到上海买什么特产送人 多肉花盆怎么选 多肉花盆怎么选视频 暖雪冰系无限盾怎么玩 miui10怎么申请内测资格_小米miui10系统内测资格申请教程 河北十大机场排名 河北有哪些机场离衡水近 初恋这件小事 月饼会有要密封吗 真丝睡衣能用挂烫机吗 任务分类分析法,按照比较的对象分类,比较分析法包括 和平精英不掉分卡怎么用 和平精英不掉分卡怎么用不了 家庭关系与社会关系的区别 奖励章节详细攻略 密室逃脱极地求生1攻略大全 显卡背面数字怎么认定,显卡背标 慈禧与光绪皇帝关系 乾隆娶了自己的女儿 洛谷 P2850 [USACO06DEC]虫洞Wormholes 虫洞 usaco|BZOJ 1715: [Usaco2006 Dec]Wormholes 虫洞