套娃形成一些链形结构,给你套娃的初始状态和目标状态,问你需要几步(将最外层套娃打开,以及将一整套套娃塞进一个空套娃都算一步)才能达到。

容易发现,只有每条链链尾的匹配段可以不拆,其他的都得拆开。

#include<cstdio>
using namespace std;
int n,ra[100010],rb[100010],fa[100010],fb[100010],sa[100010],sb[100010];
int ans1,ans2;
void df1(int rt,int U){ra[U]=rt;if(sa[U]){df1(rt,sa[U]);}
}
void df2(int rt,int U){rb[U]=rt;if(sb[U]){df2(rt,sb[U]);}
}
int main(){int x;scanf("%d",&n);for(int i=1;i<=n;++i){scanf("%d",&x);if(x){fa[i]=x;sa[x]=i;++ans1;}}for(int i=1;i<=n;++i){if(!fa[i]){df1(i,i);}}for(int i=1;i<=n;++i){scanf("%d",&x);if(x){++ans2;fb[i]=x;sb[x]=i;}}for(int i=1;i<=n;++i){if(!fb[i]){df2(i,i);}}for(int i=1;i<=n;++i){if(!sa[i] && !sb[i]){int U1=fa[i],U2=fb[i];while(U1 && U2 && U1==U2){--ans1;--ans2;U1=fa[U1];U2=fb[U2];}}}printf("%d\n",ans1+ans2);return 0;
}

转载于:https://www.cnblogs.com/autsky-jadek/p/7214344.html

【思路】Gym - 101173F - Free Figurines相关推荐

  1. SDU程序设计思维实践题目总结

    题目来源及链接 题目名称及讲解博客链接 涉及算法 原题以及原题链接 第二周作业 Maze BFS POJ-3984 Pour water BFS POJ-1606 第二周实验 化学 模拟 codefo ...

  2. Gym - 101611G God of Winds 思路思路思路 2017-2018 ACM-ICPC, NEERC, Moscow Subregional Contest

    题意: 给定一个n*m的网格,每跳边有一个初始值,在一些格子里填数,会对这个格子的4条边有影响 问是否存在填数方案使得所有的边值为0: 思路: 对于每一列格子的横边,若是加和为0,那一定存在一种解使得 ...

  3. E.Text Editor (Gym 101466E + 二分 + kmp)

    题目链接:http://codeforces.com/gym/101466/problem/E 题目: 题意: 给你s串和t串,一个数k,求t的最长前缀串在s串中出现次数不少于k. 思路: 一眼二分+ ...

  4. (寒假开黑gym)2017-2018 ACM-ICPC German Collegiate Programming Contest (GCPC 2017)

    layout: post title: (寒假开黑gym)2017-2018 ACM-ICPC German Collegiate Programming Contest (GCPC 2017) au ...

  5. gym中render()函数在远端server运行的解决方案

    近来在跑gym上的环境时,遇到了如下的问题: pyglet.canvas.xlib.NoSuchDisplayException: Cannot connect to "None" ...

  6. Gym 101190D BZOJ 4842 Luogu P6967 LOJ #6071 [NEERC2016]Delight for a Cat (费用流)

    题目链接 (BZOJ) 大人,时代变了 (Gym) https://codeforces.com/gym/101190 (Luogu) https://www.luogu.com.cn/problem ...

  7. Gym - 101173H Hangar Hurdles(bfs+克鲁斯卡尔重构树)

    题目链接:点击查看 题目大意:给出一个 n∗nn*nn∗n 的矩阵,有些位置存在障碍物,现在有 qqq 次询问,每次询问给出两个点 st=(x1,y1),ed=(x2,y2)st=(x1,y1),ed ...

  8. Gym 101102C---Bored Judge(区间最大值)

    题目链接 http://codeforces.com/gym/101102/problem/C problem description Judge Bahosain was bored at ACM ...

  9. Gym - 100917F Find the Length-用最小路径树求最小环

    https://codeforces.com/gym/100917/problem/F 题目大意:就给你一个无向图,求出所有点属于的最小环大小. 思路:我们给每一个点用dji求出最小路径树,然后对于一 ...

  10. 多层图,dj+dp Gym 102501A Environment-Friendly

    一般求最短路,限制某个条件 Gym 102501A Environment-Friendly Gym 102501A Environment-Friendly 题意:求最小的co2消耗量(最短路可) ...

最新文章

  1. 作业函数的定义与调用
  2. 最新阿里Java技术面试题,看这一文就够了!
  3. 用谷歌搜索技术问题一定比用百度好?也未必...
  4. PyTorch nn.Module 一些疑问
  5. Bean和Spirng模块
  6. 给火山安卓软件开发平台娃娃#2版提点意见
  7. 云服务器快速配置阿里巴巴NTP(网络时间协议)
  8. 【转】SourceInsight4.0的使用--一遍很详细介绍source insight4使用的文章
  9. 【备忘】最新区块链开发入门到精通视频教程下载
  10. 解决VS2017安装一直卡在正在下载
  11. PHP 3D大富翁,大富翁3D版 Monopoly Classic HD
  12. 陈茁20172260数据结构笔记
  13. 手机号不用后,这操作必须要做,不然银行卡里的钱就别人花了
  14. 使用Navicat快速生成数据库字典
  15. 纯净安装 Windows 11 官方原版系统的方法图解(适用强迫症患者)
  16. 合工大计算机与信息学院保研,合肥工业大学计算机与信息学院(专业学位)计算机技术保研夏令营...
  17. Python3学习3 格式化 % format
  18. C语言在控制台上实现鼠标操作的方法
  19. seo搜索引擎最佳化,10大网站排名关键因素
  20. 城市飞行航线最短路径规划

热门文章

  1. 196.删除重复的电子邮箱
  2. pandas填充缺失值
  3. python爬虫总结
  4. python 直线检测_python hough变换检测直线的实现方法
  5. 中文分词与马尔科夫模型之二(隐马尔科夫模型与维特比)
  6. 【NLP】揭秘马尔可夫模型神秘面纱系列文章(一)
  7. 2017年度工作总结
  8. 基于离线策略的强化学习(PPO)
  9. 思科交换机(cisco)开启802.1x认证
  10. jumserver 官方文档和