P2239 螺旋矩阵

    • 4.6K通过
    • 14.7K提交
  • 题目提供者 CCF_NOI
  • 评测方式 云端评测
  • 标签 数论,数学 模拟 NOIp普及组 2014
  • 难度 普及/提高-
  • 时空限制 1000ms / 128MB

题解

  • 提示:收藏到任务计划后,可在首页查看。
  • 最新讨论 显示

    推荐的相关题目 显示

    题目描述

    一个$n$行$ n$列的螺旋矩阵可由如下方法生成:

    从矩阵的左上角(第$1$行第$1$列)出发,初始时向右移动;如果前方是未曾经过的格子,则继续前进,否则右转;重复上述操作直至经过矩阵中所有格子。根据经过顺序,在格子中依次填入$1, 2, 3, ... , n$,便构成了一个螺旋矩阵。2

    下图是一个$n = 4$ 时的螺旋矩阵。

    1     2     3     4
    12    13    14    5
    11    16    15    6
    10     9     8     7

    现给出矩阵大小$n$以及$i$和$j$,请你求出该矩阵中第$i$行第$j$列的数是多少。

    (本题目为2014NOIP普及T3)

    输入输出格式

    输入格式:

    共一行,包含三个整数 $n,i,j$,每两个整数之间用一个空格隔开,分别表示矩阵大小、待求的数所在的行号和列号。

    输出格式:

    一个整数,表示相应矩阵中第$i$行第$j$列的数。

    输入输出样例

    输入样例#1: 复制
    4 2 3
    输出样例#1: 复制
    14

    说明

    【数据说明】

    对于$50\%$的数据,$1 ≤ n ≤ 100$;

    对于$100\%$的数据,$1 ≤ n ≤ 30,000,1 ≤ i ≤ n,1 ≤ j ≤ n$。

    提示
    标程仅供做题后或实在无思路时参考。
    请自觉、自律地使用该功能并请对自己的学习负责。
    如果发现恶意抄袭标程,将按照I类违反进行处理。