213162026-01-12 18:23:55horvayzsomborHírlánccpp17Time limit exceeded 38/80600ms11432 KiB
#include <iostream>
#include <vector>
#include <climits>

using namespace std;

void visit(int x, vector<char> &vis, vector<int> &t, vector<int> &ans)
{
    if(vis[x])
    {
        int size = 1;
        int to = t[x];

        while(to != x)
        {
            size++;
            to = t[to];
        }

        ans[x] = size;
        to = t[x];

        while(to != x)
        {
            ans[to] = size;
            to = t[to];
        }
        
        return;
    }

    vis[x] = 1;
    visit(t[x], vis, t, ans);

    if(ans[x] != 0) return;

    ans[x] = ans[t[x]] + 1;
}

int main()
{
    int n;
    cin >> n;

    vector<int> t(n + 1);

    for(int i = 1; i <= n; i++)
    {
        cin >> t[i];
    }
    
    vector<int> ans(n + 1);

    int maxe = INT_MIN;
    int index;

    for(int i = 1; i <= n; i++)
    {
        if(ans[i] == 0)
        {
            vector<char> vis(n + 1);

            visit(i, vis, t, ans);
        }

        if(ans[i] > maxe)
        {
            maxe = ans[i];
            index = i;
        }
    }

    cout << index << " " << maxe;

    return 0;
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted1ms316 KiB
subtask220/20
2Accepted2ms316 KiB
3Accepted2ms512 KiB
4Accepted4ms316 KiB
5Accepted4ms552 KiB
6Accepted4ms416 KiB
7Accepted4ms424 KiB
8Accepted8ms316 KiB
9Accepted13ms432 KiB
10Accepted2ms508 KiB
11Accepted2ms316 KiB
12Accepted2ms316 KiB
subtask318/18
13Accepted128ms2016 KiB
14Accepted85ms2024 KiB
15Accepted82ms2284 KiB
16Accepted82ms2780 KiB
17Accepted86ms4720 KiB
18Accepted90ms5232 KiB
19Accepted85ms5344 KiB
20Accepted86ms5352 KiB
21Accepted90ms9780 KiB
22Accepted89ms11432 KiB
subtask40/42
23Accepted1ms512 KiB
24Accepted2ms316 KiB
25Accepted2ms512 KiB
26Accepted4ms316 KiB
27Accepted4ms552 KiB
28Accepted4ms416 KiB
29Accepted4ms424 KiB
30Accepted8ms316 KiB
31Accepted13ms432 KiB
32Accepted2ms508 KiB
33Accepted2ms316 KiB
34Accepted2ms316 KiB
35Accepted128ms2016 KiB
36Accepted85ms2024 KiB
37Accepted82ms2284 KiB
38Accepted82ms2780 KiB
39Accepted86ms4720 KiB
40Accepted90ms5232 KiB
41Accepted85ms5344 KiB
42Accepted86ms5352 KiB
43Accepted90ms9780 KiB
44Accepted89ms11432 KiB
45Time limit exceeded582ms2016 KiB
46Time limit exceeded582ms2028 KiB
47Time limit exceeded583ms2160 KiB
48Time limit exceeded600ms2416 KiB
49Time limit exceeded578ms2792 KiB
50Time limit exceeded578ms3516 KiB
51Time limit exceeded578ms3440 KiB
52Time limit exceeded600ms3444 KiB
53Time limit exceeded575ms4208 KiB
54Time limit exceeded577ms5416 KiB