//想定TLE解法 ループを見つけるまで回す //1.あみだくじを1回だけシミュレートして置換先を決定し、元の列に戻るまでループを回す。多分TLE //n<=100のため最大ケースは232,792,560 = 16*9*5*7*11*13*17*19となる。多分。オーバーフローはしないはず #include #include #include #include "assert.h" #include #include #include #include using namespace std; #define MAX_N 100 #define MAX_K 1000 //find the loop int solve_loop(const vector &v){ int ret = -1; int n = v.size(); vector pos(n); for(int i=0; i next(n); for(int i=0; ; i++){ for(int j=0; j> N; assert(2<=N && N<=MAX_N); int K; cin >> K; assert(0<=K && K<=MAX_K); vector v(N); for(int i=0; i> x >> y; assert(1<=x && x<= N); assert(1<=y && y<= N); assert(x