站外题30分求助
查看原帖
站外题30分求助
1039211
Wendy_Hello_qwq楼主2024/5/30 20:07

素数棋盘

DescriptionDescription

小昊是个极聪明的学生,思维非常活跃,动手能力也很强,平时没事总是喜欢玩电脑,一些常用应用软件的使用,对小昊来说没什么挑战性,后来开始玩益智游戏,没过多久,就都玩儿通关了。这时,学校开始培训信息学奥赛知识了,小昊也很有兴趣,成绩很好,有时还会自己思考一些难题来给同学们做,其中一道是:在N∗MN*M的棋盘上(1<=N,M<=10)(1<=N,M<=10)填入N∗MN*M个数,分别是1、2、3……N∗M1、2、3……N*M ,共使得任意两个相邻的数之和为素数。在这里我们约定,左上角的格子里必须放数字11。

InputInput

一行,两个数N、MN、M,用空格隔开。

OutputOutput

输出这个NN行MM列的棋盘;

若无解,则输出“NO!”“NO!”;

若有多种解,则需输出第一行、第一列之和均为最小,并且第一行的字典序位置小于第一列的字典序。(这里的字典序为1、2、3......N∗M1、2、3......N*M中数字排列的先后,排在前面的字典序小于排在后面的位置)

SamplesSamples

输入数据 1

4 4

输出数据 1

1 2 11 12

4 9 8 5

7 10 3 14

6 13 16 15

【样例解释】

第一行、第一列之和均为所有可能答案中最小的和;

输出第一行(1 2 11 12)的字典序小于第一列(1 4 7 6),因为数字2排在数字4前的面。

输入数据 2

3 3

输出数据 2

NO!NO!

2024/5/30 20:07
加载中...