CFCF2147A.Shortest Increasing Path

普及-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

你现在位于一个矩形网格的 $$(0, 0)$$,希望到达 $$(x, y)$$。

为此,你可以进行一系列的移动操作。

每一步可以在 xx 轴或 yy 轴正方向上前进一个正整数长度。

11 步必须沿 xx 轴移动,第 22 步沿 yy 轴移动,第 33 步再沿 xx 轴移动,依此类推。形式化地讲,如果我们从 11 开始编号每一步,则奇数步移动在 xx 轴,偶数步移动在 yy 轴。

此外,每一步的长度必须严格大于前一步的长度。

请输出到达 $$(x, y)$$ 所需的最少步数,如果不可能到达,输出 1-1

输入格式

每组测试数据包含多个测试用例。第一行为测试用例个数 tt1t1041 \le t \le 10^4)。
接下来的每组测试用例,每行为两个整数 xxyy1x,y1091 \le x, y \le 10^9)。

输出格式

对于每个测试用例,输出到达 $$(x, y)$$ 所需的最少步数,如果无法到达则输出 1-1

输入输出样例

  • 输入#1

    10
    1 2
    5 6
    4 2
    1 1
    2 1
    3 3
    5 1
    5 4
    752 18572
    95152 2322

    输出#1

    2
    2
    3
    -1
    -1
    -1
    -1
    -1
    2
    3

说明/提示

可视化链接

在第二个测试用例中,可以先沿 xx 轴移动 55 到达 $$(5, 0)$$,再沿 yy 轴移动 66 到达 $$(5, 6)$$。

在第三个测试用例中,可以先到 $$(1, 0)$$,再到 $$(1, 2)$$,最后到 $$(4, 2)$$。

在第四个测试用例中,无法到达 $$(1, 1)$$。因为第一步沿 xx 轴移动到 $$(1, 0)$$ 后,第二步在 yy 轴上必须至少移动 22,无法只到 y=1y=1

首页