求调玄关
查看原帖
求调玄关
773288
JackyNo1楼主2024/12/4 21:36

改的可能有点多

#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;
		while(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 21:36
加载中...