189642025-11-13 18:36:05ercseferencHírlánccpp17Runtime error 20/80247ms262144 KiB
#include <bits/stdc++.h>
using namespace std;
vector<int>a,hossz;
vector<bool>volt;
vector<vector<int>>sor;
void nez(int x,int y){
    volt[x]=1;
    sor[y].push_back(x); volt[x]=1;
    if(hossz[a[x]]!=0){
        hossz[sor[y][sor[y].size()-1]]=hossz[a[x]]+1;
        for(int i=sor[y].size()-2; i>=0; i--)
            hossz[sor[y][i]]=hossz[sor[y][i+1]]+1;
        sor[y].clear();}
    else if(volt[a[x]]){
        int ind=-1;
        for(int i=0; i<sor[y].size(); i++)
            if(sor[y][i]==a[x]){ind=i; break;}
        for(int i=ind; i<sor[y].size(); i++)
            hossz[sor[y][i]]=sor[y].size()-ind;
        for(int i=ind-1; i>=0; i--)
            hossz[sor[y][i]]=hossz[sor[y][i+1]]+1;
        sor[y].clear();}
    else nez(a[x],y);}
int main()
{
    int n; cin>>n; a.resize(n+1); hossz.resize(n+1);
    volt.resize(n+1); sor.resize(n+1,vector<int>(n+1));
    for(int i=1; i<=n; i++)cin>>a[i];
    for(int i=1; i<=n; i++)if(hossz[i]==0)nez(i,i);
    int maxi=-1, maxind;
    for(int i=1; i<=n; i++){
        if(hossz[i]>maxi){maxi=hossz[i]; maxind=i;}}
    cout<<maxind<<" "<<maxi;
    return 0;
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted1ms500 KiB
subtask220/20
2Accepted28ms23684 KiB
3Accepted28ms23604 KiB
4Accepted25ms23988 KiB
5Accepted28ms23860 KiB
6Accepted28ms23300 KiB
7Accepted23ms22836 KiB
8Accepted29ms23952 KiB
9Accepted29ms24116 KiB
10Accepted14ms16580 KiB
11Accepted16ms16180 KiB
12Accepted14ms16240 KiB
subtask30/18
13Runtime error241ms262144 KiB
14Runtime error200ms262144 KiB
15Runtime error240ms262144 KiB
16Runtime error247ms262144 KiB
17Runtime error204ms262144 KiB
18Runtime error204ms262144 KiB
19Runtime error238ms262144 KiB
20Runtime error199ms262144 KiB
21Runtime error241ms262144 KiB
22Runtime error202ms262144 KiB
subtask40/42
23Accepted1ms316 KiB
24Accepted28ms23684 KiB
25Accepted28ms23604 KiB
26Accepted25ms23988 KiB
27Accepted28ms23860 KiB
28Accepted28ms23300 KiB
29Accepted23ms22836 KiB
30Accepted29ms23952 KiB
31Accepted29ms24116 KiB
32Accepted14ms16580 KiB
33Accepted16ms16180 KiB
34Accepted14ms16240 KiB
35Runtime error241ms262144 KiB
36Runtime error200ms262144 KiB
37Runtime error240ms262144 KiB
38Runtime error247ms262144 KiB
39Runtime error204ms262144 KiB
40Runtime error204ms262144 KiB
41Runtime error238ms262144 KiB
42Runtime error199ms262144 KiB
43Runtime error241ms262144 KiB
44Runtime error202ms262144 KiB
45Runtime error239ms262144 KiB
46Runtime error200ms262144 KiB
47Runtime error196ms262144 KiB
48Runtime error240ms262144 KiB
49Runtime error197ms262144 KiB
50Runtime error201ms262144 KiB
51Runtime error245ms262144 KiB
52Runtime error202ms262144 KiB
53Runtime error243ms262144 KiB
54Runtime error202ms262144 KiB