การเคลื่อนไหวง่าย ๆ ซ้ำแล้วซ้ำเล่า…
t.A.T.u., «A Simple Motion»
Julia ชอบการเคลื่อนไหวง่าย ๆ มาก โดยเฉพาะในปริภูมิสามมิติ! เมื่อไม่นานมานี้ เธอพบเมทริกซ์ที่สอดคล้องกับการหมุนบางอย่างรอบแกนที่ผ่านจุดกำเนิด
เมทริกซ์การหมุน $A$ ย้ายจุด $\begin{pmatrix}x\\y\\z\end{pmatrix}$ ไปยัง $\begin{pmatrix}x'\\y'\\z'\end{pmatrix}$ ดังนี้:
$$ \begin{pmatrix}x'\\y'\\z'\end{pmatrix}= \begin{pmatrix}A_{11}&A_{12}&A_{13}\\A_{21}&A_{22}&A_{23}\\A_{31}&A_{32}&A_{33}\end{pmatrix} \times\begin{pmatrix}x\\y\\z\end{pmatrix}. $$
การหมุนยังสามารถอธิบายในเชิงเรขาคณิตได้ด้วยเวกเตอร์หน่วย (กล่าวคือ มีความยาว $1$) $v=\begin{pmatrix}v_x\\v_y\\v_z\end{pmatrix}$ ซึ่งเป็นเวกเตอร์ที่การหมุนเกิดขึ้นรอบ ๆ และมุมการหมุน $\alpha$ สมมติว่าคุณมองไปยังจุดกำเนิดจากปลายของ $v$ ถ้าการหมุนเป็นทวนเข็มนาฬิกา มุม $\alpha$ จะเป็นบวก มิฉะนั้นจะเป็นลบ
Julia ต้องการแสดงการหมุนที่กำหนดด้วยเมทริกซ์ในเชิงเรขาคณิต แต่น่าเสียดายที่ Julia ไม่ทราบค่าของ $v$ และ $\alpha$ เธอจึงขอให้คุณหาค่าเหล่านี้ เพื่อให้เธอเคลื่อนไหวง่าย ๆ ของเธอต่อไปได้
ข้อมูลนำเข้า
กำหนดเมทริกซ์ $A$ มาให้เป็นสามบรรทัด แต่ละบรรทัดมีจำนวนจริงสามจำนวน แต่ละจำนวนมีตัวเลขหลังจุดทศนิยมไม่เกิน $20$ หลัก รับประกันว่ามี $v$ และ $\alpha$ ที่ทำให้ $1\le|\alpha|\le179$ และสมาชิกของเมทริกซ์ $A'$ ซึ่งสอดคล้องกับการหมุนรอบเวกเตอร์ $v$ ด้วยมุม $\alpha$ ต่างจากสมาชิกที่ตำแหน่งเดียวกันของ $A$ ไม่เกิน $10^{-13}$
ข้อมูลส่งออก
ในบรรทัดแรก ให้พิมพ์มุม $\alpha$ ในหน่วยองศา ในบรรทัดที่สอง ให้พิมพ์พิกัดของเวกเตอร์หน่วย $v$ พิมพ์ทุกจำนวนให้แม่นยำที่สุดเท่าที่จะทำได้ คำตอบจะถือว่าถูกต้อง ถ้าผลต่างระหว่าง $A_{ij}$ กับสมาชิกที่ตำแหน่งเดียวกันของเมทริกซ์ที่สร้างจากมุมและเวกเตอร์หน่วยของคุณไม่เกิน $10^{-6}$
ตัวอย่าง
ข้อมูลนำเข้า 1
0 -1 0 1 0 0 0 0 1
ข้อมูลส่งออก 1
90 0 0 1