#HXOJ3743. 动态数组课后题三:分糖果

提交3 通过1
通过率33.3%
时间限制1000ms
内存限制128MiB

题目描述

题目描述

糖果

小珅有 m 颗糖,编号为1,2,……。他打算发给n个小朋友。发完糖之后,为了促进小朋友之间纯洁的友谊,他会安排r次互换活动。每次互换活动会让第x个小朋友和第y个小朋友交换手里的糖果。现在小珅想知道最终每个小朋友含有哪些糖果。

输入格式

第一行三个整数 n,m,r(2<n<1000,1<m,r<10⁶),表示n个小朋友有m颗糖,r次互换安排。

第二行 m 个整数,aᵢ表示编号为i的糖发给了第 aᵢ 个小朋友。

接下来r行,每行两个整数x,y,表示第 x 个小朋友和第y个小朋友互换手中的糖果。

数据保证 1<aᵢ,x,y<n,x≠y。

输出格式

n 行,每行以一个整数 c 开头,表示第i个小朋友含有的糖果数,接下来是一个长度为 c 的递增编号序列,整数之间用空格隔开。

输入样例 #1

3 6 1
1 3 2 1 3 2
2 3

输出样例 #1

2 1 4
2 2 5
2 3 6

输入样例 #2

3 7 2
1 3 2 1 3 2 1
1 2
2 3

输出样例 #2

2 3 6
2 2 5
3 1 4 7

输入样例 #3

4 8 3
2 3 4 1 2 3 4 1
1 3
2 4
3 1

输出样例 #3

2 4 8
2 3 7
2 2 6
2 1 5

数据范围

第一行三个整数 n,m,r(2<n<1000,1<m,r<10⁶),表示n个小朋友有m颗糖,r次互换安排。

数据保证 1<aᵢ,x,y<n,x≠y。