#P963. Knight

Knight

题目背景

本来是 R11 的 T2,但是比赛锅了,所以变成题库里的普通题了。大家一起骂比赛负责人 @

题目描述

给定无穷棋盘上的骑士(knight,规则同中国象棋中的马),初始在 (x,y)(x,y) 处(为了方便你实现,我们保证 y>x>0y>x>0)。你需要将其移动至 (0,0)(0,0)

在第 ii 步,你需要选择 p,q{1,1}p,q\in\{1,-1\},然后:

  • ii 为奇数,则马的坐标从 (a,b)(a,b) 变为 (a+p,b+2q)(a+p,b+2q)
  • ii 为偶数,则马的坐标从 (a,b)(a,b) 变为 (a+2p,b+q)(a+2p,b+q)

输入格式

唯一的一行,两个正整数 x,yx,y

输出格式

第一行正整数 cc 表示你需要的操作次数。

cc 行每行两个整数,只能是 111-1,以空格隔开,表示这一步操作你选择的 p,qp,q 。你需要保证经过所有操作后 x=y=0x=y=0

3 5
6
-1 -1
1 -1
-1 -1
-1 -1
1 1
-1 -1
7 14
9
-1 -1
-1 -1
-1 -1
1 -1
-1 -1
-1 -1
-1 -1
-1 -1
1 -1
7 14
21
-1 -1
-1 -1
-1 -1
1 -1
-1 -1
-1 -1
-1 -1
-1 -1
1 -1
-1 -1
-1 -1
1 1
1 1
-1 -1
-1 -1
1 1
1 1
-1 -1
-1 -1
1 1
1 1

提示

在样例 11 中,骑士的移动过程如下:$(3,5)\rightarrow(2,3)\rightarrow(4,2)\rightarrow(3,0)\rightarrow(1,-1)\rightarrow(2,1)\rightarrow(0,0)$。

评分方式

本题采用捆绑测试。

t=2y3t=\lfloor\frac{2y}3\rfloor。以下为评分方式:

  • Subtask 1:y3y\le3。你需要在 t+4t+4 步之内做到。共 1010 分。

  • Subtask 2:y9y\le9。你需要在 t+4t+4 步之内做到。共 55 分。

  • Subtask 3: 9<y41059<y\le 4\cdot10^5。记 cc 为你的操作次数。得分如下表:

    image

一个 Subtask 的得分为所有测试点中的最低分。

如样例 2,32,3 的输入一致,符合 Subtask 3 的限制,其中 t=9t=9,但输出不一致。样例 22c=9t+4c=9\le t+4,故获得满分。样例 33c=21c=21 满足 t+4<ct+20t+4<c\le t+20,故得分为 85(ct4)=7785-(c-t-4)=77