Submission #52702940


Source Code Expand

#include<bits/stdc++.h>
using namespace std;
//#include<atcoder/all>
//using namespace atcoder;
using ll = long long;
#define rep(i,n) for(int i=0;i<(n);++i)

int main(){
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    int n;
    cin>>n;
    vector<vector<int>> g(n);
    for(int u=0;u<n;++u){
        int v;
        cin>>v;
        --v;
        g[u].emplace_back(v);
    }

    vector<bool> seen(n),finished(n);
    stack<int> hist;
    vector<int> ans;
    auto dfs = [&] (auto dfs,int v) -> void {
        seen[v] = true;
        hist.push(v);
        for(auto next:g[v]){
            if(seen[next] && !finished[next]) {
                while(!hist.empty()){
                    int h = hist.top();
                    ans.emplace_back(h+1);
                    hist.pop();
                    if(h==next) break;
                }
            }
            if(seen[next]) continue;
            dfs(dfs,next);
        }
        finished[v] = true;
    };

    dfs(dfs,0);
    ranges::reverse(ans);
    cout<<ans.size()<<endl;
    for(auto s : ans) cout<<s<<" ";

}

Submission Info

Submission Time
Task C - Find it!
User ponzoie
Language C++ 20 (gcc 12.2)
Score 350
Code Size 1123 Byte
Status AC
Exec Time 83 ms
Memory 56624 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 350 / 350
Status
AC × 3
AC × 54
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt, test_31.txt, test_32.txt, test_33.txt, test_34.txt, test_35.txt, test_36.txt, test_37.txt, test_38.txt, test_39.txt, test_40.txt, test_41.txt, test_42.txt, test_43.txt, test_44.txt, test_45.txt, test_46.txt, test_47.txt, test_48.txt, test_49.txt, test_50.txt, test_51.txt
Case Name Status Exec Time Memory
sample_01.txt AC 1 ms 3496 KiB
sample_02.txt AC 1 ms 3504 KiB
sample_03.txt AC 1 ms 3440 KiB
test_01.txt AC 1 ms 3504 KiB
test_02.txt AC 1 ms 3580 KiB
test_03.txt AC 1 ms 3492 KiB
test_04.txt AC 1 ms 3444 KiB
test_05.txt AC 1 ms 3356 KiB
test_06.txt AC 1 ms 3456 KiB
test_07.txt AC 1 ms 3520 KiB
test_08.txt AC 1 ms 3572 KiB
test_09.txt AC 1 ms 3520 KiB
test_10.txt AC 1 ms 3516 KiB
test_11.txt AC 1 ms 3436 KiB
test_12.txt AC 1 ms 3524 KiB
test_13.txt AC 1 ms 3496 KiB
test_14.txt AC 1 ms 3520 KiB
test_15.txt AC 1 ms 3516 KiB
test_16.txt AC 1 ms 3580 KiB
test_17.txt AC 1 ms 3520 KiB
test_18.txt AC 1 ms 3404 KiB
test_19.txt AC 19 ms 14472 KiB
test_20.txt AC 19 ms 14144 KiB
test_21.txt AC 18 ms 14140 KiB
test_22.txt AC 19 ms 14208 KiB
test_23.txt AC 18 ms 14144 KiB
test_24.txt AC 18 ms 14136 KiB
test_25.txt AC 19 ms 14104 KiB
test_26.txt AC 19 ms 14200 KiB
test_27.txt AC 19 ms 14144 KiB
test_28.txt AC 19 ms 14124 KiB
test_29.txt AC 18 ms 14052 KiB
test_30.txt AC 19 ms 14128 KiB
test_31.txt AC 70 ms 56456 KiB
test_32.txt AC 83 ms 56540 KiB
test_33.txt AC 81 ms 56624 KiB
test_34.txt AC 65 ms 56512 KiB
test_35.txt AC 71 ms 56524 KiB
test_36.txt AC 48 ms 41916 KiB
test_37.txt AC 50 ms 37648 KiB
test_38.txt AC 28 ms 20696 KiB
test_39.txt AC 22 ms 16760 KiB
test_40.txt AC 38 ms 31112 KiB
test_41.txt AC 33 ms 26780 KiB
test_42.txt AC 26 ms 21884 KiB
test_43.txt AC 34 ms 29404 KiB
test_44.txt AC 21 ms 16588 KiB
test_45.txt AC 22 ms 17520 KiB
test_46.txt AC 55 ms 43740 KiB
test_47.txt AC 65 ms 54820 KiB
test_48.txt AC 24 ms 20844 KiB
test_49.txt AC 16 ms 14148 KiB
test_50.txt AC 17 ms 14288 KiB
test_51.txt AC 16 ms 14104 KiB