翻译
查看原帖
翻译
206021
pitiless0514楼主2020/11/27 11:21

题意简述:

有一个小组,里面有nn个学生,每个学生按1n1-n进行编号,每个学生i(1<=i<=n)i(1<=i<=n)都有一个好朋友p[i](1<=p[i]<=n)p[i](1<=p[i]<=n)

准确的说,每个学生都是一个学生的最好的朋友。另一种说法是,所有的p[i]p[i]都是不一样的,但会出现一种可能情况,那就是存在学生ii的好朋友是ii,也就是它本身。

这个小组中每个人只会写一本课堂笔记,他们按照如下的算法去行动:

  • 第一天,每个学生复习自己的笔记
  • 第二天,每个学生与他最好的朋友交换笔记本

因此,第二天,学生p[i]p[i]会复习第ii个学生的笔记,第三天这个笔记将会给到学生p[p[i]]p[p[i]]。以此类推,每个u而学生个每天都可以有一篇笔记去复习。

现在,你会得到两个序列来秒睡第三天和第四天的情况。

  • a1,a2,a3...ana_1,a_2,a_3...a_n其中aia_i指的是在第三天复习笔记时,拿到第ii个学生笔记本的学生。
  • b1,b2,b3...bnb_1,b_2,b_3...b_n其中bib_i指的是在第四天复习笔记时,拿到第ii个学生笔记本的学生。

你不知道每个学生的最好朋友pp,现在给你序列aba和b,让你把这个序列pp给求出来。

输入要求:

第一行包含一个整数n(1<=n<=105)n(1<=n<=10^5),表示的是小组内有nn个学生。

第二行是一个长为nn的序列ai(1<=ai<=n)a_i(1<=a_i<=n) 第三行是一个长为nn的序列bi(1<=bi<=n)b_i(1<=b_i<=n).

输出格式: 一个长度为nn的序列p[1],p[2]..p[n]p[1],p[2]..p[n],这里保证答案唯一性

2020/11/27 11:21
加载中...