#include<cstdio>
#include<algorithm>
using namespace std;
int a[10002],g[10002][6650],k,n,brans=0,ans[10002];
int group(int x)
{
    int i,brt=1;
    for(i=1;i<=g[x][0];i++)
    {
        brt=brt+group(g[x][i]);
    }
    if(brt>=k){ans[brans]=x;++brans;return 0;}
    return brt;
}
int main()
{
    int i;
    scanf("%d%d",&k,&n);
    for(i=2;i<=n;i++){scanf("%d",&a[i]);++g[a[i]][0];g[a[i]][g[a[i]][0]]=i;}
    group(1);
    printf("%d\n",brans);
    sort(ans,ans+brans);
    if(brans==0){return 0;}
    printf("%d",ans[brans-1]);
    for(i=brans-2;i>=0;i--){printf(" %d",ans[i]);}
    printf("\n");
    return 0;
}
/*
3
14
1 1 2 2 3 2 3 6 6 6 7 4 7
*/