[Beginner Free Contest 51] LINEUP

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C++, Pascal, PyPy, Python

Anh có ~N~ cặp đồ chơi, mỗi cặp đồ chơi gồm 2 mô hình (figure) nhân vật hoạt hình luôn đi cặp với nhau, mỗi figure có một con số thể hiện giá trị của nó. Anh xếp ~N~ cặp đồ chơi thành ~2~ cột dọc, mỗi hàng ngang là một cặp figure (figure thứ nhất ở cột trái, figure thứ hai ở cột phải). Để trưng bày đẹp hơn, Anh muốn mỗi cột dọc có tổng giá trị là một số chẵn. Mỗi thao tác, Anh có thể đổi chỗ 2 figure trong cùng một cặp (đổi trái thành phải); Anh không thể tách một cặp ra (vì tách cặp ra thì xấu hơn). Mỗi lần thay đổi, Anh phải tốn thời gian mở tủ, thay đổi và đóng tủ lại để xem cách trình bày bộ sưu tập đã đẹp chưa, vì thế Anh muốn thực hiện ít thao tác nhất có thể.

Anh muốn biết mình cần ít nhất bao nhiêu thao tác thay đổi để bộ sưu tập được trình bày đẹp.

Dữ liệu

  • Dòng đầu gồm số nguyên dương ~N~ là số cặp figure mà Anh đã sưu tập ~(1 \le N \le 5 \times 10^5)~.

  • ~N~ dòng tiếp theo, dòng thứ ~i~ gồm 2 số nguyên ~a_i, b_i~ là giá trị của 2 figure trong cặp thứ ~i~ ~(1 \le a_i, b_i \le 100)~.

Kết quả

Gồm một số nguyên duy nhất là số thao tác thay đổi ít nhất để bộ sưu tập của Anh đẹp. Nếu không có cách nào, in ra ~-1~.

Ví dụ

Sample Input 1

4
1 2
2 3
4 6
4 2

Sample Output 1

1

Sample Input 2

4
1 2
2 4
3 6
4 2

Sample Output 2

0

Sample Input 3

4
1 2
3 4
5 6
4 4

Sample Output 3

-1

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.