https://www.luogu.org/problem/show?pid=2733

题目背景

农民约翰在一片边长是N (2 <= N <= 250)英里的正方形牧场上放牧他的奶牛。(因为一些原因,他的奶牛只在正方形的牧场上吃草。)遗憾的是,他的奶牛已经毁坏一些土地。( 一些1平方英里的正方形)

题目描述

农民约翰需要统计那些可以放牧奶牛的正方形牧场(至少是2x2的,在这些较大的正方形中没有一个点是被破坏的,也就是说,所有的点都是“1”)。

你的工作要在被供应的数据组里面统计所有不同的正方形放牧区域(>=2x2)的个数。当然,放牧区域可能是重叠。

输入输出格式

输入格式:

第 1 行:N,牧区的边长。

第 2 到 n+1 行:N个没有空格分开的字符。0 表示 "那一个区段被毁坏了";1 表示 " 准备好被吃"。

输出格式:

输出那些存在的正方形的边长和个数,一种一行。

输入输出样例

输入样例#1:

6
101111
001111
111111
001111
101101
111001

输出样例#1:

2 10
3 4
4 1

说明

题目翻译来自NOCOW。

USACO Training Section 3.3

f[i][j]表示以(i,j)这个点为最大正方形右下角的点

 1 #include <cstdio>
 2
 3 #define max(a,b) (a>b?a:b)
 4 #define min(a,b) (a<b?a:b)
 5 const int N(255);
 6 int size,cnt[N],f[N][N];
 7 int n,map[N][N];
 8 char s[N][N];
 9
10 int Presist()
11 {
12     scanf("%d",&n);
13     for(int i=1; i<=n; ++i) scanf("%s",s[i]+1);
14     for(int i=1; i<=n; ++i)
15       for(int j=1; j<=n; ++j)
16           map[i][j]=s[i][j]-'0';
17     for(int i=1; i<=n; ++i)
18         for(int j=1; j<=n; ++j)
19         if(map[i][j])
20         {
21             f[i][j]=min(f[i-1][j-1],min(f[i-1][j],f[i][j-1]))+1;
22             size=max(size,f[i][j]);
23             for(int k=2; k<=f[i][j]; ++k) ++cnt[k];
24         }
25     for(int i=2; i<=size; ++i) printf("%d %d\n",i,cnt[i]);
26     return 0;
27 }
28
29 int Aptal=Presist();
30 int main(){;}

转载于:https://www.cnblogs.com/Shy-key/p/7569498.html

洛谷—— P2733 家的范围 Home on the Range相关推荐

  1. Luogu P2733 家的范围 Home on the Range

    题意: 给你一个01方阵,求不同大小的全1方阵的个数 思路: 对每个点,判断以它左上角的点的方阵是否为全1方阵,若有n*n的全1方阵,则(n-1)^2的方阵必为全1,所以要判断n^2是否为全1方阵,前 ...

  2. 洛谷刷题:小玉家的电费、小玉在游泳、小鱼的航程(改进版)、小鱼的游泳时间、小鱼会有危险吗

    记录洛谷刷题QAQ 一.小玉家的电费 题目描述 夏天到了,各家各户的用电量都增加了许多,相应的电费也交的更多了.小玉家今天收到了一份电费通知单.小玉看到上面写:据闽价电 [2006]27 号规定,月用 ...

  3. 洛谷 P3258 [JLOI2014]松鼠的新家 树上差分

    缘起 [1]中我们学习了树上差分,并且a了一个裸的点差分. 现在继续树上差分~ 洛谷 P3258 [JLOI2014]松鼠的新家 分析 题目描述 松鼠的新家是一棵树,前几天刚刚装修了新家,新家有n个房 ...

  4. 洛谷-P1422-小玉家的电费

    小玉家的电费 - 洛谷 解题思路: 1.创建变量a并输入,表示用电量 2.根据题意,不同的用电量所交的电费是不同的,那么利用else  if语句对a进行判断 3.在这里注意的是用电量超出的部分是按照不 ...

  5. 【LOJ#2236】【洛谷P3258】松鼠的新家【LCA】【树上差分】

    题目大意: 题目链接: 洛谷:https://www.luogu.org/problem/P3258 LOJ:https://loj.ac/problem/2236 给出一棵树以及 n n n个点走的 ...

  6. 洛谷 - 试炼场(全部题目备份)

    整理的算法模板合集: ACM模板 目录 1.新手村 1 - 1 洛谷的第一个任务 1 - 2 顺序与分支 1 - 3 循环!循环!循环! 1 - 4 数组 1 - 5 简单字符串 1 - 6 过程函数 ...

  7. 洛谷2055 [ZJOI2009]假期的宿舍

    题目描述 学校放假了 · · · · · · 有些同学回家了,而有些同学则有以前的好朋友来探访,那么住宿就是一个问题.比如 A 和 B 都是学校的学生,A 要回家,而 C 来看B,C 与 A 不认识. ...

  8. 倍增:喷泉 深度解析(洛谷P7167)

    洛谷传送门 解析 什么破题 数据范围来看很明显最多到nlogn 首先,对于样例进行一下分析: 我们可以把它转化为一棵树: 每一个根都有对应的权,给你一个结点和加权和,问能爬到哪里 既然是树,自然要找爸 ...

  9. 洛谷找最小值c语言,洛谷 P1478 陶陶摘苹果(升级版) C语言实现

    原题地址:P1478 淘淘摘苹果(升级版)- 洛谷 题目描述 又是一年秋季时,陶陶家的苹果树结了n个果子.陶陶又跑去摘苹果,这次她有一个a公分的椅子.当他手够不着时,他会站到椅子上再试试. 这次与NO ...

最新文章

  1. python散点图拟合曲线-使用python通过点拟合曲线
  2. 通过docker搭建zabbix监控系统
  3. java四行代码实现图片下载
  4. 安卓实训项目源码_综合性项目:在线学习考试系统
  5. oracle禁止自动启动命令,自动启动和关闭Oracle 脚本
  6. vba执行linux命令,从VBA中的shell命令捕获输出值?
  7. python实现xmind_Python xmind库(生成框架图)
  8. 30岁以后的人生,如何来逆袭?
  9. 【Redis 开发与运维】开发运维的“陷阱”
  10. 手机变速齿轮_变速齿轮手机版下载-变速齿轮手机版安卓下载v1.2
  11. EOF in header-net core
  12. Windows端口 说明
  13. C51 数码管的动态显示 dynamic display method of digital tube
  14. 谷歌浏览器播放器声音
  15. 阿迪达斯携手麦当劳推出篮球明星鞋服;拜耳联合导师计划支持中国医药初创企业 | 美通企业日报...
  16. 1.1 大型网站软件系统的特点[读书敲录]
  17. Dreamweaver制作简易Flash相册
  18. 实时控制软件第一次作业--CNC软件系统案例分析
  19. 计算机操作系统设备管理ppt,计算机操作系统设备管理.ppt
  20. ~/bin/sh: xxx: not found

热门文章

  1. 判断控件是否绑定了数据集的方法
  2. LogSegment分析
  3. (43)生成时钟Generated Clock简介
  4. (62)SPI外设驱动协议(一)(第13天)
  5. java 熔断_熔断理解 - THISISPAN - 博客园
  6. 太空java游戏_JavaSpaceWar 一个基于 语言编写的太空战争游戏,包含所有图像和声音资源,便 习理解使用 Game Program 238万源代码下载- www.pudn.com...
  7. 14003.xilinx系统移植
  8. python科学计算库-数值计算库与科学计算库
  9. 【计算机二级基础知识笔记】【C+Python】
  10. 数据结构之顺序队列的优化