Quay điểm quanh điểm bất kỳ

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 lập trình một trò chơi mà nhân vật có thể xoay quanh một điểm trung tâm bất kỳ trên màn hình. Bình cần tính toạ độ của nhân vật sau khi xoay quanh một điểm \(O(a, b)\) một góc cho trước.

Hãy giúp Bình viết chương trình tính toạ độ mới của điểm \(P(x, y)\) sau khi quay quanh điểm \(O(a, b)\) một góc \(\alpha\) (đơn vị độ).

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

  • Một dòng gồm năm số thực \(x, y, a, b, \alpha\) (\(|x|, |y|, |a|, |b| \le 10^6\), \(0 \le \alpha < 360\)).

Định dạng đầu ra

  • In ra hai số thực \(x', y'\) là toạ độ của điểm sau khi quay, làm tròn đến \(6\) chữ số thập phân.

Ví dụ

Input:

2 0 1 0 90

Output:

1.000000 1.000000

Giải thích: Điểm \((2,0)\) quay \(90^\circ\) quanh \((1,0)\) cho kết quả \((1,1)\).

Ràng buộc

  • Subtask 1 (40 điểm): \(|x|, |y|, |a|, |b| \le 100\), \(\alpha\) là bội số của \(45\).
  • Subtask 2 (60 đ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.