Góc nhỏ nhất giữa hai vector

Xem dưới dạng PDF

Gửi bài giải


Điểm: 20
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
đầu vào: stdin
Đầu ra: stdout

Tác giả:
Kiểu bài tập

Bình đang nghiên cứu chuyển động của hai tia sáng xuất phát từ gốc toạ độ. Mỗi tia sáng được xác định bởi một điểm mà nó đi qua. Bình muốn tính góc nhỏ nhất giữa hai tia sáng này.

Nói cách khác, cho hai vector \(\vec{A}(x_1, y_1)\) và \(\vec{B}(x_2, y_2)\), hãy tìm góc nhỏ nhất (đơn vị độ) cần quay vector này để trùng với vector kia.

Định dạng đầu vào

  • Một dòng chứa bốn số nguyên \(x_1, y_1, x_2, y_2\) (\(|x_i|, |y_i| \le 10^4\)). Cả hai vector đều khác vector không.

Định dạng đầu ra

  • In ra một số thực là góc nhỏ nhất giữa hai vector (đơn vị độ, trong đoạn \([0, 180]\)), làm tròn đến \(4\) chữ số thập phân.

Ví dụ

Input:

1 0 0 1

Output:

90.0000

Giải thích: Góc giữa \((1,0)\) và \((0,1)\) là \(90^\circ\).

Ràng buộc

  • Subtask 1 (20 điểm): toạ độ có giá trị tuyệt đối không quá \(100\).
  • Subtask 2 (30 điểm): toạ độ có giá trị tuyệt đối không quá \(10^4\).
  • Subtask 3 (50 điểm): không có ràng buộc gì thêm.

Nhận xét

Không có ý kiến tại thời điểm này.