A120391.探索

提高+/省选-

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

黄色的树林里分出两条路 / 可惜我不能同时去涉足
我在那路口久久伫立 / 我向着一条路极目望去 / 直到它消失在丛林深处

但我却选了另外一条路 / 它荒草萋萋,十分幽寂 / 显得更诱人,更美丽
虽然在这条小路上 / 很少留下旅人的足迹

那天清晨落叶满地 / 两条路都未经脚印污染 / 啊,留下一条路等改日再见
但我知道路径延绵无尽头 / 恐怕我难以再回返

也许多少年后在某个地方 / 我将轻声叹息将往事回顾
一片树林里分出两条路 / 而我选择了人迹更少的一条 / 从此决定了我一生的道路

——义务教育教科书语文人教版七年级下册《未选择的路》

如果有第二次机会,你还会再选择 OI 吗?

Minecraft 的地图由 n×mn\times m 个区块组成,我们将每个区块看成一个大小为 1×11\times1 的方格,形成了一个 nnmm 行的网格。其中最左下角的点坐标为 (0,0)(0,0),最右上角的点坐标为 (n,m)(n,m)。Steve 最初站在 (0,0)(0,0) 的位置,最终要回到基地 (x,y)(x,y)。他每一次移动可以沿某个区块的对角线移动,并称他探索过了这个区块。

请你求出,在不离开地图并只探索每个区块至多一次的前提下,Steve 最多能够探索几个区块。特别地,若他根本无法回到 (x,y)(x,y),输出 -1。同时每组测试数据还会给定一个参数 qq,若 q=1q=1 且答案不是 -1,你需要构造出任意一种可行的方案。

输入格式

每个测试点包含多组测试数据*。输入的第一行包含两个正整数 c,Tc,T,分别表示测试点编号和测试数据的组数。对于每组测试数据:

第一行包含五个正整数 n,m,x,y,qn,m,x,y,q,分别表示地图的大小、基地的位置和该组测试数据的参数。

输出格式

本题采用 Special Judge。你只需要输出任意一种符合条件的方案。

对于每组测试数据:

第一行输出一个整数 kk,表示 Steve 最多能够探索的区块数,若他根本无法回到 (x,y)(x,y),输出 -1

q=1q=1 且答案不是 -1,则继续输出 kk 行,其中的第 ii 行包含两个整数 xi,yix_i,y_i,代表第 ii 次移动后 Steve 所在位置的坐标。

输入输出样例

  • 输入#1

    0 10
    2 2 2 2 1
    2 3 0 2 1
    3 3 3 3 0
    3 5 2 4 0
    4 4 0 4 0
    4 5 3 5 0
    4 5 4 0 0
    5 5 4 2 0
    6 4 6 4 0
    6 6 2 3 1

    输出#1

    2
    1 1
    2 2
    4
    1 1
    2 2
    1 3
    0 2
    9
    14
    12
    15
    20
    22
    18
    -1

说明/提示

【样例解释】

对于第二组测试数据,地图大小为 2×32\times 3,基地坐标为 (0,2)(0,2)。可以证明 Steve 最多只能探索 44 个区块。样例输出所对应的移动方案为 (0,0)(1,1)(2,2)(1,3)(0,2)(0,0)\to(1,1)\to(2,2)\to(1,3)\to(0,2)

【数据范围】

测试点编号 特殊性质
11 ABC\text{ABC}
22 ABD\text{ABD}
33 AB\text{AB}
44 BC\text{BC}
55 BD\text{BD}
66 B\text{B}
77 C\text{C}
88 D\text{D}
9109-10
  • 特殊性质 A\text{A}n=mn=m
  • 特殊性质 B\text{B}x=n,y=mx=n,y=m
  • 特殊性质 C\text{C}n,mn,m 都是奇数。
  • 特殊性质 D\text{D}q=0q=0

对于 100%100\% 的测试点,保证:1T1051\le T\le 10^51n,m1091 \le n,m \le 10^90xn0\le x\le n0ym0\le y\le mq{0,1}q\in\{0,1\},单个测试点中所有测试数据的 q×n×mq\times n\times m 之和不超过 5×1055\times10^5

首页