#include #include #include #include #include using namespace std; mt19937_64 engine((unsigned int)time(NULL)^(getpid()<<16)); bool validate(const vector&a,const vector&r){ vectorf(r.size()); for(int i=0;ia(N),r(N); for(int i=0;i distribution(0, N-1); for(;;){ int x=distribution(engine); int y=distribution(engine); swap(r[x],r[y]); if(validate(a,r))break; } for(int i=0;i