测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A16054. Grasshopper on a Line

编程题 普及/提高-

题目描述

You are given two integers $x$ and $k$ . Grasshopper starts in a point $0$ on an OX axis. In one move, it can jump some integer distance, that is not divisible by $k$ , to the left or to the right.

What's the smallest number of moves it takes the grasshopper to reach point $x$ ? What are these moves? If there are multiple answers, print any of them.

输入格式

The first line contains a single integer $t$ ( $1 \le t \le 1000$ ) — the number of testcases.

The only line of each testcase contains two integers $x$ and $k$ ( $1 \le x \le 100$ ; $2 \le k \le 100$ ) — the endpoint and the constraint on the jumps, respectively.

输出格式

For each testcase, in the first line, print a single integer $n$ — the smallest number of moves it takes the grasshopper to reach point $x$ .

In the second line, print $n$ integers, each of them not divisible by $k$ . A positive integer would mean jumping to the right, a negative integer would mean jumping to the left. The endpoint after the jumps should be exactly $x$ .

Each jump distance should be from $-10^9$ to $10^9$ . In can be shown that, for any solution with the smallest number of jumps, there exists a solution with the same number of jumps such that each jump is from $-10^9$ to $10^9$ .

It can be shown that the answer always exists under the given constraints. If there are multiple answers, print any of them.

输入输出样例

输入 #1
3
10 2
10 3
3 4
输出 #1
2
7 3
1
10
1
3
上一题 去做题 下一题