13818. 珅泽教育CSP-J第一轮模拟考第十八套 第 23 题

珅泽教育CSP-J第一轮模拟考第十八套 第 23 题

程序阅读(1):对角线枚举

阅读程序,回答第 16—23 题。输入 a、b 均为正整数。

int solve(int a, int b)
{
    int x = 1;
    int y = 1;
    int rank = 1;
    int dx = -1;
    int dy = 1;
    while (x != a || y != b) {
        if (x + dx < 1) {
            y++;
            dx = -dx;
            dy = -dy;
        } else if (y + dy < 1) {
            x++;
            dx = -dx;
            dy = -dy;
        } else {
            x = x + dx;
            y = y + dy;
        }
        rank++;
    }
    return rank;
}

下列关于输出 rank 的奇偶性,正确的是( )。

{{ select(1) }}

  • rank 一定为偶数
  • rank 一定为奇数
  • rank 的奇偶性与 a+ba+b 的奇偶性始终相同
  • rank 的奇偶性不能仅由 a+ba+b 的奇偶性确定