Mathematical Circus

题意翻译

给你两个整数 $n,k$($n$ 为偶数),让你将 $1$ 到 $n$ 这 $n$ 个数分成 $\dfrac{n}{2}$ 个有序二元组 $(a,b)$,满足 $(a+k)\cdot b$ 能被 $4$ 整除。可能不存在合法解。 输入第一行一个整数 $t(1\le t\le 10^4)$,表示有 $t$ 组数据。接下来 $t$ 行每行两个整数 $n,k(2\le n\le2\times10^5,0\le k\le10^9,n$ 为偶数 $)$,含义如题面所述。保证 $\sum n\le2\times10^5$。 对于每一组数据,首先输出一行一个字符串“YES”或“NO”,表示对于给定 $n,k$ 是否存在合法解。如果存在合法解,接下来 $\dfrac{n}{2}$ 行输出你构造的合法解,每行两个整数 $a,b$。

题目描述

A new entertainment has appeared in Buryatia — a mathematical circus! The magician shows two numbers to the audience — $ n $ and $ k $ , where $ n $ is even. Next, he takes all the integers from $ 1 $ to $ n $ , and splits them all into pairs $ (a, b) $ (each integer must be in exactly one pair) so that for each pair the integer $ (a + k) \cdot b $ is divisible by $ 4 $ (note that the order of the numbers in the pair matters), or reports that, unfortunately for viewers, such a split is impossible. Burenka really likes such performances, so she asked her friend Tonya to be a magician, and also gave him the numbers $ n $ and $ k $ . Tonya is a wolf, and as you know, wolves do not perform in the circus, even in a mathematical one. Therefore, he asks you to help him. Let him know if a suitable splitting into pairs is possible, and if possible, then tell it.

输入输出格式

输入格式


The first line contains one integer $ t $ ( $ 1 \leq t \leq 10^4 $ ) — the number of test cases. The following is a description of the input data sets. The single line of each test case contains two integers $ n $ and $ k $ ( $ 2 \leq n \leq 2 \cdot 10^5 $ , $ 0 \leq k \leq 10^9 $ , $ n $ is even) — the number of integers and the number being added $ k $ . It is guaranteed that the sum of $ n $ over all test cases does not exceed $ 2 \cdot 10^5 $ .

输出格式


For each test case, first output the string "YES" if there is a split into pairs, and "NO" if there is none. If there is a split, then in the following $ \frac{n}{2} $ lines output pairs of the split, in each line print $ 2 $ numbers — first the integer $ a $ , then the integer $ b $ .

输入输出样例

输入样例 #1

4
4 1
2 0
12 10
14 11

输出样例 #1

YES
1 2
3 4
NO
YES
3 4
7 8
11 12
2 1
6 5
10 9
YES
1 2
3 4
5 6
7 8
9 10
11 12
13 14

说明

In the first test case, splitting into pairs $ (1, 2) $ and $ (3, 4) $ is suitable, same as splitting into $ (1, 4) $ and $ (3, 2) $ . In the second test case, $ (1 + 0) \cdot 2 = 1 \cdot (2 + 0) = 2 $ is not divisible by $ 4 $ , so there is no partition.