比赛 20170919普及组 评测结果 AAAAAAT
题目名称 家的范围 最终得分 85
用户昵称 LGLJ 运行时间 1.106 s
代码语言 C++ 内存使用 0.56 MiB
提交时间 2017-09-19 20:16:54
显示代码纯文本
#include <iostream>
#include <algorithm>
#include <cmath>
#include <ctime>
#include <cstring>
#include <cstdio>
using namespace std;
int n;
int map[251][251]={0};
int paint(int x,int y,int a)
{
	for(int i=x;i<=x+a-1;i++)
		for(int j=y;j<=y+a-1;j++)
			if(map[i][j]==0)
				return false;
	return true;
}
int main()
{
	freopen ("range.in","r",stdin);
	freopen ("range.out","w",stdout);
	cin>>n;
	string a;
	for(int i=1;i<=n;i++)
	{
		cin>>a;
		for(int j=0;j<a.length();j++)
			map[i][j+1]=a[j]-'0';
	}
	for(int k=2,ans=0;k<=n;k++)
	{
		for(int i=1;i+k<=n+1;i++)
			for(int j=1;j+k<=n+1;j++)
				if(paint(i,j,k))
					ans++;
		if(ans!=0)
			cout<<k<<' '<<ans<<endl;
		ans=0;
	}
	//cout<<clock()/(CLOCKS_PER_SEC*1.0);
	return 0;
}