CF2026A.Perpendicular Segments

传统题 时间 2000 ms 内存 256 MiB 4 尝试 1 已通过 1 标签

Perpendicular Segments

题目描述

给定一个坐标平面和三个整数 XXYYKK。请你找到两条线段 ABABCDCD,使得:

  1. AABBCCDD 的坐标均为整数;
  2. 0Ax,Bx,Cx,DxX0 \leq A_x, B_x, C_x, D_x \leq X0Ay,By,Cy,DyY0 \leq A_y, B_y, C_y, D_y \leq Y
  3. 线段 ABAB 的长度至少为 KK
  4. 线段 CDCD 的长度至少为 KK
  5. 线段 ABABCDCD 两两垂直:即如果画出包含 ABABCDCD 的直线,这两条直线会以直角相交。

注意,线段不需要相交。只要它们所在的直线互相垂直即可。

输入格式

第一行包含一个整数 tt1t50001 \leq t \leq 5000),表示测试用例的数量。接下来有 tt 组测试数据。

每组测试数据包含一行,包含三个整数 XXYYKK1X,Y10001 \leq X, Y \leq 10001K14141 \leq K \leq 1414)。

输入有额外保证:XXYYKK 的取值方式保证一定存在解。

输出格式

对于每组测试数据,输出两行。

第一行输出 44 个整数 AxA_xAyA_yBxB_xByB_y,表示第一条线段的两个端点坐标。

第二行输出 44 个整数 CxC_xCyC_yDxD_xDyD_y,表示第二条线段的两个端点坐标。

如果有多组解,输出任意一组均可。

说明/提示

第一组测试数据的答案如下:

第二组测试数据的答案如下:

第三组测试数据的答案如下:

第四组测试数据的答案如下:

由 ChatGPT 4.1 翻译

样例

4
1 1 1
3 4 1
4 3 3
3 4 4
0 0 1 0
0 0 0 1
2 4 2 2
0 1 1 1
0 0 1 3
1 2 4 1
0 1 3 4
0 3 3 0

在线编程 IDE

建议全屏模式获得最佳体验