#CF1444D. 直角闭合折线

直角闭合折线

直角闭合折线

  • 时间限制:3 秒
  • 内存限制:512 MiB

题目描述

给定若干条水平线段和竖直线段的长度。请把所有线段各使用一次,按水平、竖直交替的顺序首尾相连,构成一条闭合折线。

折线不能发生严格自交:任意两条线段如果有公共点,该点必须同时是两条线段的端点。

若能构造,输出任意一种方案;否则报告无解。

输入格式

第一行一个整数 tt。

每组数据依次给出:水平线段数 hh、hh 个长度、竖直线段数 vv、vv 个长度。空白行没有特殊含义。

输出格式

每组数据先输出 Yes 或 No。

若有解,再输出 h+vh+v 个点,按折线遍历顺序给出顶点坐标。最后一个点与第一个点也相连。坐标绝对值不得超过 10910^9。

样例输入

2
2
1 1
2
1 1
2
1 2
2
3 3

样例输出

Yes
1 0
1 1
0 1
0 0
No

数据范围

1≤t≤2001\le t\le200,1≤h,v≤10001\le h,v\le1000,线段长度在 [1,1000][1,1000] 内,所有测试中 h+vh+v 的总和不超过 10001000。

子任务编号 分值 特殊限制
1 20 每组 h,v≤16h,v\le16
2 40 每个方向的长度总和不超过 2000020000
3 无特殊限制

每个测试点独立计分。本题使用特殊评测,合法方案均可通过。