Universal Cup Judging System

Universal Cup

Time Limit: 1.0 s Memory Limit: 1024 MB Total points: 100 Hackable ✓
Statistics

問題文

平面上の直線が与えられるので、頂点が格子点(整数座標の点)にあり、そのオイラー線が与えられた直線と一致するような三角形を 1 つ構成してください。

基本的な定義を復習しましょう。$\triangle ABC$ を平面上の非退化な三角形とし、$M_A$、$M_B$、$M_C$ をそれぞれ辺 $BC$、$AC$、$AB$ の中点とし、$s_A$、$s_B$、$s_C$ をそれぞれ辺 $BC$、$AC$、$AB$ の垂直二等分線とします。形式的には、$s_A$ は直線 $BC$ に対して点 $M_A$ を通るように引かれた垂線であり、直線 $s_B$ と $s_C$ も同様に定義されます。初等幾何学より、直線 $s_A$、$s_B$、$s_C$ はただ 1 つの点 $O$ で交わることが知られています。点 $O$ は 3 つの頂点 $A$、$B$、$C$ のすべてから等距離にあるという著しい性質を持っています。$O$ を中心とし半径が $OA$ である円は三角形 $ABC$ の外接円と呼ばれ、三角形の 3 つの頂点すべてを通る平面上で唯一の円です。点 $O$ は三角形 $ABC$ の外心と呼ばれます。

$H_A$、$H_B$、$H_C$ をそれぞれ頂点 $A$、$B$、$C$ の直線 $BC$、$AC$、$AB$ 上への正射影とします。線分 $AH_A$、$BH_B$、$CH_C$ は三角形 $ABC$ の高さ(垂線)と呼ばれます。初等幾何学より、直線 $AH_A$、$BH_B$、$CH_C$ はただ 1 つの点 $H$ で交わることが知られており、これは三角形 $ABC$ の垂心と呼ばれます。鋭角三角形または直角三角形では、$H$ は高さの線分そのものの上にあり、鈍角三角形ではその延長線上にあります。

線分 $AM_A$、$BM_B$、$CM_C$ は三角形の中線と呼ばれます。初等幾何学より、中線はただ 1 つの点 $G$ で交わることが知られており、これは三角形 $ABC$ の重心と呼ばれます。三角形 $M_A M_B M_C$ は三角形 $ABC$ の中点三角形と呼ばれます。上記の概念はこの中点三角形にも当てはまります。すなわち、点 $G$ は中点三角形の重心であり、$O$ は中点三角形の垂心です。三角形 $M_A M_B M_C$ の外接円は $M_A$、$M_B$、$M_C$、$H_A$、$H_B$、$H_C$、および線分 $AH$、$BH$、$CH$ の中点を通るため、三角形 $ABC$ の九点円と呼ばれ、その中心は $O_9$ と表されます。

正三角形では、点 $O$、$H$、$G$、$O_9$ は一致します。それ以外の任意の三角形では、これらは互いに異なりますが 1 つの直線上に並び、この直線は三角形 $ABC$ のオイラー線と呼ばれます。オイラー線上でのこれら 4 点の配置も知られています。$O_9$ は常に線分 $OH$ の中点であり、点 $G$ は線分 $OH$ 上にあってこれを $2 : 1$ の比に内分します($G$ から $O$ までの距離は $H$ までの距離の半分です)。

頂点が格子点にある非退化な三角形 $ABC$ であって、$O$、$H$、$G$、$O_9$ が与えられた直線上に乗るものを構成するか、あるいはそれが不可能であると報告してください。

入力

1 行目にはテストケースの個数を表す整数 $t$ ($1 \le t \le 5 \cdot 10^5$) が与えられます。

各テストケースの唯一の行には、直線の係数を表す 3 つの整数 $k$、$\ell$、$m$ ($-10^3 \le k, \ell, m \le 10^3$) が与えられます。この直線は方程式 $kx + \ell y + m = 0$ を満たす点 $(x, y)$ の集合として定義されます。$k^2 + \ell^2 > 0$ であることが保証されます。

出力

各テストケースについて、非退化な三角形の頂点の座標を表す 6 つの整数 $A_x, A_y, B_x, B_y, C_x, C_y$ を出力してください。条件 $-10^6 \le A_x, A_y, B_x, B_y, C_x, C_y \le 10^6$ を満たす必要があります。三角形 $ABC$ のオイラー線の方程式は $kx + \ell y + m = 0$ でなければなりません。そのような三角形が存在しない場合は、空白で区切られた 6 つの 0 を出力してください。

ジャッジが用意した各テストにおいて、与えられたオイラー線を持つ格子点頂点の三角形 $ABC$ が少なくとも 1 つ存在するならば、条件 $-10^6 \le A_x, A_y, B_x, B_y, C_x, C_y \le 10^6$ を満たす三角形も存在することが保証されています。

入出力例

8
0 1 0
1 0 1
-1 1 -2
3 4 8
1 1 1
8 4 2
27 9 3
-544 862 12
-1 -1 -1 1 0 0
-2 -2 -2 2 1 -1
-2 -1 -2 2 0 1
-4 -3 2 -4 2 1
-1 -1 -1 0 0 0
0 0 0 0 0 0
-4 0 3 -2 0 4
5811 -1154 -3261 -2058 -3713 2478

注記

頂点座標がすべて整数であるような正三角形を作ることは不可能であるため、$\triangle ABC$ が正三角形でないことは明示的に要求していません。

problem_17170_52078e2ce2ab6ed15e0ae6c5fc3c1987.png

Editorials

IDTypeStatusTitlePosted ByLast UpdatedActions
#1221EditorialOpen题解jianglyView

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.