Cho xâu ~s~ có ~n~ ký tự và dãy số ~p_1,p_2,…,p_n~ đôi một khác nhau và ~p_i∈[1,n]~.
Bạn được thực hiện nhiều thao tác với xâu ~s~, mỗi thao tác xâu ~s~ được thay thế bằng xâu ~t~, trong đó ~t_i=s_{p_i }~.
Ví dụ với với xâu ~s=abcd~ và ~p=[2,3,1,4]~ thì xâu ~t=s_2 s_3 s_1 s_4 = bcad~ sau đó ~s=t=bcda~
Yêu cầu: Hãy cho biết cần thực hiện ít nhất bao nhiêu thao tác để xâu ~s~ nhận lại giá trị ban đầu?
**Dữ liệu vào: **
Dòng đầu tiên ghi số nguyên ~t~ ~(1≤t≤5000)~ cho biết số lượng testcase. Mỗi testcase có cấu trúc như sau:
**Kết quả: **
Ví dụ:
Input
2
4
abcd
2 3 1 4
5
ababa
3 4 5 2 1
Output
3
1
Code tích cực |
---|
Trong 24h |
|
Trong 7 ngày |
Trong 30 ngày |
|
Thống kê |
---|
AC/Sub: 97887/180710 Pascal: 17121 C++: 130348 Python: 33199 Lượt xem/tải tests: 38226 |