#include #include #include #include #include #include #include #include #include #include #define mkp make_pair #define mkt make_tuple #define rep(i,n) for(int i = 0; i < (n); ++i) using namespace std; typedef long long ll; const ll MOD=1e9+7; template void chmin(T &a,const T &b){if(a>b) a=b;} template void chmax(T &a,const T &b){if(a>N; vector A(N); rep(i,N) cin>>A[i]; rep(i,N) A[i]--; vector> pos(N); rep(i,N){ pos[A[i]].push_back(i); } int sum=0; for(int i=0;i=2||A[0]!=i||A[N-1]!=i){ cout<<-1<