217962026-01-14 08:01:11szjHírlánccpp17Hibás válasz 0/8032ms2700 KiB
#include <bits/stdc++.h>

using namespace std;

int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    //ifstream cin("f.txt");
    int n, i, a;
    cin >> n;
    int t[n], hossz[n]={}, ma=-1, l;
    bool volt[n]={}, volt2[n]={};
    for(i=0; i<n; i++)
    {
        cin >> t[i];
        t[i]--;
        volt[t[i]]=1;
    }
    queue<int>q;
    for(i=0; i<n; i++)
    {
        if(!volt[i])
        {
            a=i;
            while(!volt2[a])
            {
                q.push(a);
                volt2[a]=1;
                a=t[a];
            }
            while(!q.empty())
            {
                if(q.front()==a)
                {
                    hossz[a]+=q.size();
                    q.pop();
                    break;
                }
                else hossz[q.front()]=hossz[a]+q.size();
                q.pop();
            }
            while(!q.empty())
            {
                hossz[q.front()]=hossz[a];
                q.pop();
            }
        }
    }
    for(i=0; i<n; i++)
    {
        if(ma<hossz[i])
        {
            ma=hossz[i];
            l=i+1;
        }
    }
    cout << l << " " << ma;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms316 KiB
subtask20/20
2Elfogadva2ms316 KiB
3Elfogadva2ms436 KiB
4Elfogadva2ms316 KiB
5Elfogadva2ms316 KiB
6Elfogadva1ms560 KiB
7Elfogadva2ms316 KiB
8Elfogadva2ms508 KiB
9Elfogadva1ms316 KiB
10Hibás válasz2ms508 KiB
11Hibás válasz2ms316 KiB
12Hibás válasz2ms512 KiB
subtask30/18
13Hibás válasz25ms2356 KiB
14Hibás válasz25ms2268 KiB
15Hibás válasz25ms2336 KiB
16Hibás válasz25ms2292 KiB
17Hibás válasz25ms2356 KiB
18Hibás válasz26ms2212 KiB
19Hibás válasz25ms2156 KiB
20Hibás válasz25ms2332 KiB
21Hibás válasz26ms2360 KiB
22Hibás válasz26ms2368 KiB
subtask40/42
23Elfogadva2ms316 KiB
24Elfogadva2ms316 KiB
25Elfogadva2ms436 KiB
26Elfogadva2ms316 KiB
27Elfogadva2ms316 KiB
28Elfogadva1ms560 KiB
29Elfogadva2ms316 KiB
30Elfogadva2ms508 KiB
31Elfogadva1ms316 KiB
32Hibás válasz2ms508 KiB
33Hibás válasz2ms316 KiB
34Hibás válasz2ms512 KiB
35Hibás válasz25ms2356 KiB
36Hibás válasz25ms2268 KiB
37Hibás válasz25ms2336 KiB
38Hibás válasz25ms2292 KiB
39Hibás válasz25ms2356 KiB
40Hibás válasz26ms2212 KiB
41Hibás válasz25ms2156 KiB
42Hibás válasz25ms2332 KiB
43Hibás válasz26ms2360 KiB
44Hibás válasz26ms2368 KiB
45Elfogadva32ms2224 KiB
46Elfogadva32ms2356 KiB
47Elfogadva32ms2304 KiB
48Elfogadva32ms2344 KiB
49Elfogadva32ms2356 KiB
50Elfogadva32ms2700 KiB
51Elfogadva32ms2380 KiB
52Elfogadva32ms2284 KiB
53Elfogadva32ms2464 KiB
54Elfogadva32ms2520 KiB