Sắp xếp xen kẽ chẵn lẻ
Đề bài
Mô tả
William có một mảng gồm số nguyên . Trong một bước, anh ấy có thể đổi chỗ hai phần tử liền kề (hai phần tử và được gọi là liền kề nếu ).
William muốn bạn tính số bước đổi chỗ ít nhất để mảng không còn hai phần tử liền kề nào có cùng tính chẵn lẻ.
Dữ liệu vào
Dòng đầu chứa số nguyên là số bộ test ().
Mỗi bộ test có cấu trúc:
- Dòng đầu chứa số nguyên là độ dài mảng ().
- Dòng thứ hai chứa số nguyên ().
Tổng các giá trị trên tất cả các bộ test không vượt quá .
Dữ liệu ra
Với mỗi bộ test, in ra số phép đổi chỗ tối thiểu cần thiết, hoặc nếu không thể đạt được trạng thái mà không có hai số liền kề nào có cùng tính chẵn lẻ.
Ràng buộc
- Tổng không vượt quá .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 3 6 6 1 1 9 6 1 1 1 2 2 2 2 8 6 6 6 2 3 4 5 1 |
1 0 3 -1 2 |
Bộ 1: đổi và → . Bộ 2: chỉ có một phần tử, đã thoả mãn. Bộ 3: cần 3 phép đổi, ví dụ . Bộ 4: hai số đều chẵn — không thể. Bộ 5: đổi và → . |
| 1 7 3 3 4 5 2 4 4 |
5 | Cần sắp xếp để các số chẵn (4,2,4,4) và lẻ (3,3,5) xen kẽ nhau; chi phí tối thiểu là 5 phép đổi liền kề. |
Bình luận