#E. [语言月赛 202309] 悬线

    Type: RemoteJudge 1000ms 512MiB

[语言月赛 202309] 悬线

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目背景

我们定义一个数字是质数,当且仅当它的因子仅有 11 和自身。特别的,11 不是质数。

题目描述

给定一个 n×mn \times m 的数字阵。约定第 ii 行第 jj 列上的数用 (i,j)(i,j) 表示。

我们称以第 ii 行第 jj 列的格子为底的悬线的长度是最大的 kk,满足 kik \leq i(i,j),(i1,j),(i2,j),(ik+1,j)(i,j), (i-1,j), (i-2,j),\dots(i-k+1,j)kk 个数都是质数。特别的,如果 (i,j)(i, j) 本身不是质数,称以第 ii 行第 jj 列为底的悬线长度为 00

对于每个格子,请你求出以它为底的悬线长度。

输入格式

本题单个测试点内有多组测试数据。输入的第一行是一个整数,表示数据组数 TT

对每组数据,按如下格式输入:

每组数据第一行是两个整数,表示数字阵的行数 nn 和列数 mm
接下来 nn 行,每行 mm 个整数,第 ii 行第 jj 个整数表示 (i,j)(i,j)

输出格式

对每组数据,输出 nn 行,每行 mm 个用单个空格隔开的整数。第 ii 行第 jj 个数表示以第 ii 行第 jj 列的格子为底的悬线长度。

1
3 3
1 2 3
4 5 6
7 8 9
0 1 1
0 2 0
1 0 0

提示

数据规模与约定

  • 20%20\% 的数据,n=1n = 1
  • 50%50\% 的数据,(i,j)100(i,j) \leq 100
  • 80%80\% 的数据,(i,j)1000(i,j) \leq 1000
  • 100%100\% 的数据,1n,m2001 \leq n, m \leq 2001(i,j)1051 \leq (i,j) \leq 10^51T151 \leq T \leq 15

初一从0开始学C++(二维数组练习)

Not Claimed
Status
Done
Problem
8
Open Since
2024-4-8 0:00
Deadline
2024-6-30 23:59
Extension
24 hour(s)