Hoán vị

View as PDF

Submit solution

Points: 100.00
Time limit: 0.3s
Memory limit: 256M
Input: stdin
Output: stdout

Authors:
Problem type
Allowed languages
C, C++, GAS64, Pascal, Perl, PHP, Python, Sed, TCL, Text

Cho hai hoán vị ~A, B~ cùng độ dài, đếm số thao tác đổi chỗ hai vị trí kề nhau trong ~A~ để biến hoán vị ~A~ thành hoán vị ~B~.

Hoán vị là một dãy chứa các phần tử của một tập hợp ~1~ và các phần tử đó chỉ xuất hiện một lần duy nhất.

Đúng hơn, hoán vị ~A~ có ~N~ phần tử thì ~a_i \leq N~ và ~a_i \ne a_j~ ~(\forall j \ne i)~.

~A =~ {~1,4,2,3,5~} là một hoán vị, trong khi ~A =~ {~1,3,2,3,5~} và ~A =~ {~1,3,2,6,5~} không phải là một hoán vị.

Input

  • Dòng đầu chứ số ~N (N \leq 10^5)~ là số phần tử của dãy.
  • Dòng tiếp theo chứ ~N~ số nguyên dương ~a_i (a_i \leq N)~ là dãy hoán vị.
  • Dòng tiếp theo chứ ~N~ số nguyên dương ~b_i (b_i \leq N)~ là dãy hoán vị.

Output

  • Một số nguyên duy nhất là số lượng thao tác để biến hoán vị ~A~ thành hoán vị ~B~ .

Ví dụ

Example Input

5
2 4 1 3 5
3 4 2 5 1

Example Output

5

Subtask

  • Subtask 1: ~10~% số tests có ~N \leq 6~.
  • Subtask 2: ~20~% số tests có ~N \leq 10^3~.
  • Subtask 3: ~30~% số tests có ~N \leq 10^5~, hoán vị ~B~ là một dãy tăng dần (~b_i < b_j~, ~\forall i < j~).
  • Subtask 4: ~40~% số tests không có ràng buộc gì thêm.

Comments

Please read the guidelines before commenting.


There are no comments at the moment.