Hoán Đổi

Xem PDF




Dạng bài
Ngôn ngữ cho phép
C++, Clang, Clang++, Cobol, D, Groovy, Haskell, JS, Lua, Node JS, ObjectiveC, Pascal, Prolog, Pypy, Pypy 3, Python, Scala
Điểm: 1100 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Cho số nguyên dương \(N\) và ba dãy số có \(N\) số nguyên dương \(a_1,a_2,...,a_N\), \(b_1,b_2,...,b_N\), \(c_1,c_2,...,c_N\).

Với mỗi dãy số bạn có thể hoán đổi vị trí của phần tử bên trong dãy số đó tùy thích.

Yêu cầu: Bạn hãy tìm số \(i\) lớn nhất có thể \((1 \le i \le N\)) thỏa mãn rằng \(a_i < b_i < c_i\).

Input

  • Dòng đầu tiên chứa số nguyên dương \(N\) \((1 \le N \le 2 \times 10^5)\).
  • Dòng tiếp theo chứa dãy \(a_1,a_2,...,a_N\) \((1 \le a_i \le 10^9)\), mỗi số cách nhau một khoảng trắng.
  • Dòng tiếp theo chứa dãy \(b_1,b_2,...,b_N\) \((1 \le b_i \le 10^9)\), mỗi số cách nhau một khoảng trắng.
  • Dòng cuối cùng chứa dãy \(c_1,c_2,...,c_N\) \((1 \le c_i \le 10^9)\), mỗi số cách nhau một khoảng trắng.

Output

  • In ra kết quả bài toán sau khi thực hiện yêu cầu đề bài.

Scoring

  • Subtask \(1\) (\(40\%\) số điểm): Có \(N \le 20\).
  • Subtask \(2\) (\(60\%\) số điểm): Không có ràng buộc gì thêm.

Example

Test 1

Input
5
9 6 14 1 8
2 10 3 12 11
15 13 5 7 4
Output
3
Note
  • Đây là một cách ta có thể hoán đổi như sau:
    • \(a = (1,6,8,9,14)\)
    • \(b = (3,2,10,12,11)\)
    • \(c = (4,7,15,13,5)\).
  • Ta sẽ có \(3\) giá trị \(i\) \((i = 1,3,4)\) thỏa mãn điều kiện đề bài và đạt giá trị lớn nhất có thể.

Bình luận

Không có bình luận nào.