求调玄关
查看原帖
求调玄关
773288
JackyNo1楼主2024/12/4 22:05
#include <iostream>
using namespace std;
int n, f[1000], vis[1000], cnt;
int main()
{
	cin >> n;
	for (int i = 1; i <= n; i++)cin >> f[i];
	int q;
	cin >> q;
	while (q--)
	{
		int x;
		int p;
		cin >> p;
		for (int i = 1; i <= p; i++)
		{
			cin >> x;
			vis[x]++;
			for (int i = 1; ; i++)
			{
				if (x != 0)
				{
					vis[f[x]]++;
					x = f[x];
				}
				else break;
			}
			cnt++;
		}
		for (int i = n; i >= 0; i--)
			if (vis[i] == cnt)
			{
				cout << i << endl;
				break;
			}
	}
	return 0;
 } 
2024/12/4 22:05
加载中...