Universal Cup Judging System

Universal Cup

実行時間制限: 1.0 s メモリ制限: 1024 MB 満点: 100 ハック可能 ✓
統計

คำอธิบาย

กำหนดเส้นตรงหนึ่งเส้นบนระนาบ จงสร้างรูปสามเหลี่ยมที่มีจุดยอดอยู่ที่จุดพิกัดจำนวนเต็ม โดยที่เส้นตรงออยเลอร์ของรูปสามเหลี่ยมนั้นทับกับเส้นตรงที่กำหนดให้พอดี

ทบทวนบทนิยามพื้นฐานกันก่อน ให้ $\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$ ตัดกันที่จุดจุดเดียวคือจุด $O$ จุด $O$ มีสมบัติที่โดดเด่นคืออยู่ห่างจากจุดยอดทั้งสามคือ $A$, $B$ และ $C$ เป็นระยะทางเท่ากัน วงกลมที่มีจุดศูนย์กลางที่ $O$ และมีรัศมี $OA$ เรียกว่าวงกลมล้อมรอบของรูปสามเหลี่ยม $ABC$ และเป็นวงกลมเพียงวงเดียวบนระนาบที่ผ่านจุดยอดทั้งสามของรูปสามเหลี่ยม จุด $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$ ตัดกันที่จุดจุดเดียวคือจุด $H$ ซึ่งเรียกว่าจุดออร์ธอเซนเตอร์ (orthocenter) ของรูปสามเหลี่ยม $ABC$ ในรูปสามเหลี่ยมมุมแหลมหรือมุมฉาก จุด $H$ จะอยู่บนส่วนของเส้นตรงที่เป็นส่วนสูงโดยตรง ในขณะที่ในรูปสามเหลี่ยมมุมป้าน จุดนี้จะอยู่บนส่วนต่อขยายของส่วนสูง

ส่วนของเส้นตรง $AM_A$, $BM_B$ และ $CM_C$ เรียกว่าเส้นมัธยฐานของรูปสามเหลี่ยม จากเรขาคณิตระดับโรงเรียน เป็นที่ทราบกันดีว่าเส้นมัธยฐานทั้งสามตัดกันที่จุดจุดเดียวคือจุด $G$ ซึ่งเรียกว่าจุดเซนทรอยด์หรือจุดศูนย์ถ่วงของรูปสามเหลี่ยม $ABC$ รูปสามเหลี่ยม $M_A M_B M_C$ เรียกว่ารูปสามเหลี่ยมจุดกึ่งกลาง (medial triangle) ของรูปสามเหลี่ยม $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$ จะทับกันเป็นจุดเดียว ในรูปสามเหลี่ยมอื่นๆ จุดทั้งสี่จะแตกต่างกันทั้งหมด แต่อยู่บนเส้นตรงเดียวกันซึ่งเรียกว่าเส้นตรงออยเลอร์ของรูปสามเหลี่ยม $ABC$ การเรียงตัวของจุดทั้งสี่บนเส้นตรงออยเลอร์ก็เป็นที่ทราบกันดีเช่นกัน กล่าวคือ $O_9$ เป็นจุดกึ่งกลางของส่วนของเส้นตรง $OH$ เสมอ และจุด $G$ อยู่บนส่วนของเส้นตรง $OH$ โดยแบ่งส่วนของเส้นตรงนี้ออกเป็นอัตราส่วน $2 : 1$ (โดยที่ $G$ อยู่ใกล้ $O$ เป็นสองเท่าเมื่อเทียบกับระยะห่างไปหา $H$)

คุณต้องสร้างรูปสามเหลี่ยมไม่ลดรูป $ABC$ ที่มีจุดยอดอยู่ที่จุดพิกัดจำนวนเต็ม โดยที่จุด $O$, $H$, $G$ และ $O_9$ อยู่บนเส้นตรงที่กำหนดให้ หรือรายงานว่าเป็นไปไม่ได้

ข้อมูลนำเข้า

บรรทัดแรกประกอบด้วยจำนวนเต็ม $t$ คือจำนวนชุดข้อมูลทดสอบ ($1 \le t \le 5 \cdot 10^5$)

ในบรรทัดเดียวของคำอธิบายแต่ละชุดข้อมูลทดสอบ จะมีจำนวนเต็มสามตัวคือ $k$, $\ell$ และ $m$ แทนสัมประสิทธิ์ของเส้นตรง ($-10^3 \le k, \ell, m \le 10^3$) เส้นตรงนี้ถูกนิยามให้เป็นเซตของจุด $(x, y)$ ที่สอดคล้องกับสมการ $kx + \ell y + m = 0$ รับประกันว่า $k^2 + \ell^2 > 0$

ข้อมูลส่งออก

สำหรับแต่ละชุดข้อมูลทดสอบ ให้พิมพ์จำนวนเต็มหกตัวคือ $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$ หากไม่มีรูปสามเหลี่ยมดังกล่าว ให้พิมพ์เลขศูนย์หกตัวคั่นด้วยช่องว่าง

ในแต่ละชุดข้อมูลทดสอบที่คณะกรรมการจัดเตรียมไว้ รับประกันว่าหากมีรูปสามเหลี่ยม $ABC$ ที่มีจุดยอดเป็นพิกัดจำนวนเต็มอย่างน้อยหนึ่งรูปที่มีเส้นตรงออยเลอร์ตามที่กำหนดให้แล้ว จะมีรูปสามเหลี่ยมที่สอดคล้องกับเงื่อนไข $-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.