解题思路:


注意事项:

参考代码:

N=int(input())
result_list=[]
for I in range(N):
    X,Y=map(int,input().strip().split())
    B_list=[[9,0,9,0,0] for i in range(10)]#五个数分别是左x,右x,上y,下y,出现次数。
    for x in range(X):
        label_list=list(map(int,list(input().strip())))
        for y in range(Y):
            label=label_list[y]
            B_list[label][4]+=1
            if x<B_list[label][0]:
                B_list[label][0]=x
            if x>B_list[label][1]:
                B_list[label][1]=x
            if y<B_list[label][2]:
                B_list[label][2]=y
            if y>B_list[label][3]:
                B_list[label][3]=y
    dlt=1
    for i in B_list:
        if i[4]:
            if (i[1]-i[0]+1)*(i[3]-i[2]+1)!=i[4]:
                dlt=0
                break
    if dlt:
        result_list.append('YES')
    else:
        result_list.append('NO')
for i in result_list:
    print(i)



点赞(0)
 

0.0分

5 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论