20.B3. CTDL> bài Mảng rỗng
Mảng rỗng
Trong một dự án về công nghệ may thông minh, FullHouse Dev đang phát triển một thuật toán để điều khiển hai dây chuyền sản xuất song song. Mỗi dây chuyền được biểu diễn bằng một mảng các công đoạn, và họ cần tìm cách để đồng bộ hóa hai dây chuyền này một cách hiệu quả nhất.
Bài toán
FullHouse Dev được cung cấp hai mảng, mỗi mảng có kích thước \(n\), chứa \(n\) số nguyên dương đầu tiên, mỗi số xuất hiện đúng một lần (tức là chúng là các hoán vị). Nhiệm vụ của họ là tìm thời gian tối thiểu để làm rỗng cả hai mảng. Có thể thực hiện hai loại thao tác, mỗi thao tác mất 1 giây:
- Thao tác 1: Xoay mảng thứ nhất theo chiều kim đồng hồ
- Thao tác 2: Khi phần tử đầu tiên của cả hai mảng giống nhau, loại bỏ chúng khỏi cả hai mảng
INPUT FORMAT:
- Dòng đầu tiên chứa số nguyên \(n\) - kích thước của mảng
- Dòng thứ hai chứa các phần tử của mảng thứ nhất
- Dòng thứ ba chứa các phần tử của mảng thứ hai
OUTPUT FORMAT:
- In ra tổng thời gian cần thiết để làm rỗng cả hai mảng
Ràng buộc:
- \(1 \leq n \leq 10^5\)
Ví dụ
INPUT
3
1 3 2
2 3 1
OUTPUT
6
Giải thích
- Thực hiện thao tác 1: xoay mảng A thành 3, 2, 1
- Thực hiện thao tác 1: xoay mảng A thành 2, 1, 3
- Thực hiện thao tác 2: loại bỏ số 2, còn A = 1, 3 và B = 3, 1
- Thực hiện thao tác 1: xoay mảng A thành 3, 1
- Thực hiện thao tác 2: loại bỏ số 3, còn A = 1 và B = 1
- Thực hiện thao tác 2: loại bỏ số 1, cả hai mảng đều rỗng Tổng cộng mất 6 giây.
Comments