最大空白区-第十四届蓝桥杯STEMA-C++中级组真题一T5-1-数据加强版
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
第四题
编程实现: 最大空白区
题目描述:
小明有一张 N*M 的方格纸,且部分小方格中涂了颜色,部分小方格还是空白。给出 N(2≤N≤100)和 M(2≤M≤100)的值,及每个小方格的状态(被涂了颜色小方格用数字 1 表示,空白小方格用数字 0 表示),请帮助小明找出最大的矩形空白区域,并输出矩形空白区域由多少个小方格组成和它的起点位置(行i和列j)。
例如:N=4,M=5,4*5 的方格纸中每个小方格的状态如下图:
最大的空白区域由 6 个小方格组成(红色框区域)。起点位置为第三行第一列:(3,1)
输入描述:
第一行输入两个正整数 N 和 M(2≤N≤100,2≤M≤100),分别表示方格纸的行数和列数,两个正整数之间以一个空格隔开
第二行开始输入 N 行,每行 M 个整数(整数为 1 或者 0),1 表示涂色方格,0 表示空白方格,整数之间无空格隔开
输出描述:
第一行输出一个整数,表示最大矩形由多少个小方格组成
第二行输出两个整数i和j,表示这个最大矩形左上角的位置,如果有多个相同数的矩形存着,则输出起点位置行数小的,如果行数相同则输出列数小的。
(如果没有空白小方格,则仅输出 0)
样例输入:
4 5
11000
10100
00011
00010
样例输出:
6
3 1