#5424. 初中决赛-生命体的族群模拟

初中决赛-生命体的族群模拟

当前没有测试数据。

题目描述

科学家用AI 模拟生命体的族群分类情况,假设有n 个新生的生命体,每个生命体都有一个生命值,两个生命体相遇时会发生从斗争到认识到合并到同一族群的过程,在不同族群里面的生命体,如果相遇时,会找到本族群最强者进行两两对决,每次斗争都会让参与者的 生命值减半,例如原来是生命值10,进行斗争后变成5,原来是5,进行斗争后变成2,如果生命值是1,斗争后还维持为1。斗争后两个族群就合并在一起了,如果两个生命体来自于同一个个族群,则它们不会发生斗争问题。请编写程序,求出每一个对决序列,两个相遇的生命体进行对决后,组成的新的族群的最强者的生命值,如果该对决序列的两个生命体属 于同一族群则输出-1。

输入:

第一行是一个整数n,表示有多少个生命体。 第二行到第n+1 行是每个生命体的生命值。 第n+2 行是一个整数m,表示要进行认识的生命体对的数量。 最后面的m 行,每行有两个数字,表示要进行对决的生命体的序号。

输出:

对每一对要进行接触的生命体,给出对决后,组成的新的族群的最强者的生命值,如果 两者在同一个族群,则输出-1.

输入举例:

5
20
16
10
10
4
5
2 3
3 4
3 5
4 5
1 5

输出举例:

8
5
5
-1
10