之前做过一道类似的 国际象棋盘神马的。。

统计出以每个1作为右下角的最大正方形 那么以大于二到这个最大值之间为边的正方形都可以以这个为右下角 累加就可以了

dp[i][j] = min(dp[i-1][j],dp[i-1][j-1],dp[i][j-1])+1;

 /*
ID: shangca2
LANG: C++
TASK: range
*/
#include <iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<stdlib.h>
using namespace std;
int dp[][],num[];
char s[][];
int main()
{
freopen("range.in","r",stdin);
freopen("range.out","w",stdout);
int i,j,n;
cin>>n;
for(i = ; i <= n ;i++)
for(j = ; j <= n ; j++)
{
cin>>s[i][j];
if(s[i][j]=='')
dp[i][j] =;
}
for(i = ; i <= n ; i++)
{
for(j = ; j <= n ; j++)
{
if(s[i][j]==''&&s[i-][j]==''&&s[i-][j-]==''&&s[i][j-]=='')
dp[i][j] = min(min(dp[i-][j],dp[i-][j-]),dp[i][j-])+;
}
}
for(i = ; i <= n ; i++)
for(j = ; j <= n ;j++)
{
for(int g = ; g <= dp[i][j] ; g++)
num[g]++;
}
for(i = ; i <= n ; i++)
if(num[i])
cout<<i<<" "<<num[i]<<endl;
return ;
}

最新文章

  1. IOS RunLoop浅析 一
  2. Git相关知识
  3. Meta http-equiv属性详解(转)
  4. uC/OS-II实现TEST.MAK块
  5. 解决Ubuntu开机自动挂载硬盘回收站不可用等权限问题
  6. 安装Microsoft oneDrive(原skyDrive)
  7. struts2标签自动错行、换行问题
  8. 网站被百度和google封了,怎么办?
  9. jquery中的选择器01
  10. Hanlp汉字转拼音使用python调用详解
  11. poi api工具
  12. CAS实现单点登录SSO执行原理探究超详细
  13. 《阿里巴巴Java开发手册》扫描插件正式发布--插件安装和使用分析
  14. ASP.NET MVC中使用Session来保持表单的状态
  15. pch文件配置
  16. NGUI学习笔记(六):ScrollView、Grid和Table
  17. JavaScript数据结构-9.循环链表
  18. H5上传图片,并且显示进度条
  19. Report studio交叉表求指定维度和的问题
  20. python基础day4

热门文章

  1. 快速预览:C# 3.0的新东西
  2. ZIP压缩文件夹中上个月的文件,并将备份文件拷贝到服务器
  3. C# 中使用win32函数 GetScrollInfo返回false 返回引用全是零的问题
  4. Java 的自动装箱拆箱
  5. javax.el.PropertyNotFoundException: Property &#39;aDesc&#39; not found on type
  6. SETLOCAL
  7. cocos2d-x使用DragonBones动画
  8. 【BZOJ3884】【降幂大法】上帝与集合的正确用法
  9. pdo如何防止 sql注入
  10. js 数组 var arr=[] 的用法总结