Trung đội gọn
Đề bài
Mô tả
Có trung đội, mỗi trung đội gồm đúng con chuột chũi. Mỗi con chuột được đặt tại một vị trí trên mặt phẳng toạ độ, và có một "nhà" tại vị trí .
Một thao tác lên con chuột thứ là quay vị trí của nó độ ngược chiều kim đồng hồ quanh điểm nhà . Một con chuột có thể được thao tác nhiều lần liên tiếp (mỗi lần quay thêm độ quanh nhà của chính nó).
Một trung đội được gọi là gọn nếu vị trí của con chuột tạo thành một hình vuông có diện tích khác (bốn đỉnh phân biệt).
Với mỗi trung đội, hãy tìm số thao tác nhỏ nhất cần thực hiện để trung đội đó trở nên gọn, hoặc cho biết điều đó là không thể.
Dữ liệu vào
- Dòng đầu chứa số nguyên , số trung đội.
- dòng tiếp theo, mỗi dòng chứa số nguyên , , , . Cứ dòng liên tiếp mô tả một trung đội (theo thứ tự).
Dữ liệu ra
In ra dòng. Dòng thứ chứa số thao tác nhỏ nhất để trung đội thứ trở nên gọn, hoặc nếu không thể.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 4 1 1 0 0 -1 1 0 0 -1 1 0 0 1 -1 0 0 1 1 0 0 -2 1 0 0 -1 1 0 0 1 -1 0 0 1 1 0 0 -1 1 0 0 -1 1 0 0 -1 1 0 0 2 2 0 1 -1 0 0 -2 3 0 0 -2 -1 1 -2 0 |
1 -1 3 3 |
Trung đội 1: chỉ cần quay lần con chuột thứ hai (hoặc thứ ba). Trung đội 2: không thể làm gọn. Trung đội 3: từ ba con cuối, quay con một lần và con hai lần. Trung đội 4: quay con thứ nhất hai lần và con thứ ba một lần. |
| 1 1 0 2 0 -1 0 -2 0 0 1 0 2 0 -1 0 -2 |
0 | Bốn điểm đã tạo thành hình vuông (nghiêng độ) nên không cần thao tác nào. |
| 1 2 1 0 0 -2 1 0 0 2 -1 0 0 -2 -1 0 0 |
-1 | Dù quay thế nào bốn điểm cũng chỉ nằm trên một hình chữ nhật , không bao giờ thành hình vuông. |
Bình luận