#13213. 珅泽教育CSP-J第一轮模拟考第十七套 第 26 题

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

程序阅读(2):螺旋坐标

using pair = std::pair<int, int>;
pair find(int n, int k)
{
    if (n == 1) {
        return {1, 1};
    }
    if (k <= n - 1) {
        return {1, k};
    }
    else {
        k -= n - 1;
    }
    if (k <= n - 1) {
        return {k, n};
    }
    else {
        k -= n - 1;
    }
    if (k <= n - 1) {
        return {n, n + 1 - k};
    }
    else {
        k -= n - 1;
    }
    if (k <= n - 1) {
        return {n + 1 - k, 1};
    }
    else {
        k -= n - 1;
    }
    auto p = find(n - 2, k);
    return {p.first + 1, p.second + 1};
}

执行 find(4, 7) 的返回值为( )。

{{ select(1) }}

  • {3, 3}
  • {3, 4}
  • {4, 3}
  • {4, 4}