231002026-01-16 12:04:59sklausHírlánccpp17Accepted 80/8041ms3916 KiB
#include <bits/stdc++.h>
using namespace std;
int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);
    int n;
    cin >> n;
    vector<int> t(n+1);
    for(int i=1; i<=n; i++)cin>>t[i];
    vector<int> marvolt(n+1, 0);
    vector<int> eredmeny(n+1, 0);
    int maxi = 0;
    int legjobb = -1;
    for(int i=1; i<=n; i++)
    {
        int most = i;
        vector<int> ut;
        while(marvolt[most] != i and eredmeny[most] == 0)
        {
            marvolt[most] = i;
            ut.push_back(most);
            most = t[most];
        }
        if(eredmeny[most] != 0)
        {
            int hossz = eredmeny[most];
            for(int j=ut.size()-1; j>=0; j--)
            {
                hossz++;
                eredmeny[ut[j]] = hossz;
            }
        }
        else
        {
            int tor = -1;
            for(int j=0; j<ut.size(); j++)
            {
                if(ut[j] == most)
                {
                    tor = j;
                    break;
                }
            }
            int hossz = ut.size() - tor;
            for(int j=tor; j<ut.size(); j++)
            {
                eredmeny[ut[j]] = hossz;
            }
            int akt = hossz;
            for(int j=tor-1; j>=0; j--)
            {
                akt++;
                eredmeny[ut[j]] = akt;
            }
        }
    }
    for(int i=1; i<=n; i++)
    {
        if(eredmeny[i] > maxi)
        {
            maxi = eredmeny[i];
            legjobb = i;
        }
    }
    cout << legjobb << " " << maxi;
    return 0;
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted1ms316 KiB
subtask220/20
2Accepted1ms316 KiB
3Accepted1ms316 KiB
4Accepted1ms328 KiB
5Accepted1ms316 KiB
6Accepted1ms316 KiB
7Accepted1ms316 KiB
8Accepted1ms316 KiB
9Accepted1ms316 KiB
10Accepted1ms316 KiB
11Accepted1ms316 KiB
12Accepted1ms416 KiB
subtask318/18
13Accepted35ms2788 KiB
14Accepted35ms2612 KiB
15Accepted35ms2756 KiB
16Accepted35ms2764 KiB
17Accepted37ms3172 KiB
18Accepted37ms3424 KiB
19Accepted35ms3420 KiB
20Accepted35ms3568 KiB
21Accepted35ms3916 KiB
22Accepted35ms3768 KiB
subtask442/42
23Accepted1ms316 KiB
24Accepted1ms316 KiB
25Accepted1ms316 KiB
26Accepted1ms328 KiB
27Accepted1ms316 KiB
28Accepted1ms316 KiB
29Accepted1ms316 KiB
30Accepted1ms316 KiB
31Accepted1ms316 KiB
32Accepted1ms316 KiB
33Accepted1ms316 KiB
34Accepted1ms416 KiB
35Accepted35ms2788 KiB
36Accepted35ms2612 KiB
37Accepted35ms2756 KiB
38Accepted35ms2764 KiB
39Accepted37ms3172 KiB
40Accepted37ms3424 KiB
41Accepted35ms3420 KiB
42Accepted35ms3568 KiB
43Accepted35ms3916 KiB
44Accepted35ms3768 KiB
45Accepted39ms2760 KiB
46Accepted39ms2612 KiB
47Accepted39ms2820 KiB
48Accepted39ms2760 KiB
49Accepted39ms2868 KiB
50Accepted41ms2868 KiB
51Accepted41ms2868 KiB
52Accepted37ms2868 KiB
53Accepted39ms3484 KiB
54Accepted39ms3252 KiB