Nộp bài | Các bài nộp | Làm tốt nhất | Về danh sách bài |
P182SUMB - ROUND 2B - Gương |
Cho một nguồn phát tia laser và một gương phẳng phản xạ toàn phần. Ta có thể tưởng tượng trên hệ trục tọa độ Cartesian-3D (gồm 3 trục Ox, Oy, Oz); trong đó nguồn phát là một điểm và gương được coi như một mặt phẳng mà 2 trong số 3 trục chính của hệ tọa độ nằm trên mặt phẳng đó.
Cho biết vector chỉ hướng phát tia laser, hãy cho biết vector tia laser phản xạ sau khi tiếp xúc với gương.
Input
Dòng đầu tiên chứa một số nguyên dương N là số lượng bộ test (1 ≤ N ≤ 64000).
N dòng tiếp theo, mỗi dòng chứa một bộ test, gồm 6 số nguyên Ex, Ey, Ez, Vx, Vy, Vz và một xâu nhị phân S (|S| = 3). Ex, Ey, Ez, Vx, Vy, Vz lần lượt là tung độ, hoành độ, cao độ của nguồn phát và hệ số x, hệ số y, hệ số z của vector chỉ hướng phát tia laser.
Giới hạn: 0 ≤ |Ex|, |Ey|, |Ez|, |Vx|, |Vy|, |Vz| ≤ 1018, Ex × Ey × Ez ≠ 0, Vx2 + Vy2 + Vz2 > 0.
Xâu nhị phân S chắc chắn gồm 3 ký tự: từ trái sang phải các ký tự cho biết trục Ox, Oy và Oz có nằm trên mặt phẳng gương hay không – “0” nếu không hoặc “1” nếu có.
Output
Output gồm N dòng, tương ứng với N bộ test.
Mỗi dòng có dạng sau: nếu có đáp án, gồm 3 số nguyên Rx, Ry, Rz; cho biết lần lượt hệ số x, hệ số y, hệ số z của vector chỉ hướng tia laser phản xạ; ngược lại, in ra một số nguyên “-1” duy nhất.
Example
Input: 1 -10 -10 -10 3 9 6 110 Output: 3 9 -6
Được gửi lên bởi: | adm |
Ngày: | 2018-07-13 |
Thời gian chạy: | 2s |
Giới hạn mã nguồn: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Ngôn ngữ cho phép: | ASM32-GCC ASM32 ASM64 MAWK BC C CSHARP C++ 4.3.2 CPP CPP14 COFFEE LISP sbcl DART FORTH GO JAVA JS-RHINO JS-MONKEY KTLN OCT PAS-GPC PAS-FPC PERL PERL6 PROLOG PYTHON PYTHON3 PY_NBC R RACKET SQLITE SWIFT UNLAMBDA |