#include using namespace std; typedef signed long long ll; #undef _P #define _P(...) (void)printf(__VA_ARGS__) #define FOR(x,to) for(x=0;x>N; FOR(i,N) cin>>V[i+2]; for(i=2;ima[id]) id=i; _P("%d\n",ma[id]); vector V; while(id>=2) { V.push_back(id-1); id=from[id]; } reverse(ALL(V)); FOR(i,V.size()) _P("%d%c",V[i],(i==V.size()-1)?'\n':' '); } int main(int argc,char** argv){ string s;int i; if(argc==1) ios::sync_with_stdio(false); FOR(i,argc-1) s+=argv[i+1],s+='\n'; FOR(i,s.size()) ungetc(s[s.size()-1-i],stdin); solve(); return 0; }