[USACO5.3]巨大的牛棚Big Barn && 洛谷【p1387】最大正方形(动态规划)

题解:洛谷 P2701 [USACO5.3] 巨大的牛棚 Big Barn 题目涵盖了从基础到进阶的多种算法和数据结构,旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。),但他为了不破坏果树,就想找一个空旷无树的地方修建牛棚。你的任务是计算并输出,在他的农场中,不需要砍树却能够修建的最大正方形牛棚的边长。当然,牛棚的边必须和水平轴和垂直轴平行。个位置有树(障碍物),求边与坐标轴平行的最大正方形空区域(不含树)的边长。),他想要在他的农场上建造一座正方形大牛棚。的,可以建造在农场右下角的两个位置其中一个。只由一行组成,约翰的牛棚的最大边长。#普及 #线性DP-二维。 阅读详情

题目背景

(USACO 5.3.4)

题目描述

农夫约翰想要在他的正方形农场上建造一座正方形大牛棚。他讨厌在他的农场中砍树,想找一个能够让他在空旷无树的地方修建牛棚的地方。我们假定,他的农场划分成 N x N 的方格。输入数据中包括有树的方格的列表。你的任务是计算并输出,在他的农场中,不需要砍树却能够修建的最大正方形牛棚。牛棚的边必须和水平轴或者垂直轴平行。

EXAMPLE

考虑下面的方格,它表示农夫约翰的农场,‘.’表示没有树的方格,‘#’表示有树的方格

1 2 3 4 5 6 7 8

1 … … . .

2 . # … # . .

3 … … . .

4 … … . .

5 … … . .

6 . . # … . .

7 … … . .

8 … … . .

最大的牛棚是 5 x 5 的,可以建造在方格右下角的两个位置其中一个。

输入输出格式

输入格式:
Line 1: 两个整数: N (1 <= N <= 1000),农场的大小,和 T (1 <= T <= 10,000)有树的方格的数量

Lines 2..T+1: 两个整数(1 <= 整数 <= N), 有树格子的横纵坐标

输出格式:
只由一行组成,约翰的牛棚的最大边长。

输入输出样例

输入样例#1:
8 3
2 2
2 6
6 3
输出样例#1:
5

题解(巨大的牛棚):

#include<iostream>
#include<cstdio>
using namespace std;
int map[1005][1005];
int dp[1005][1005];
int main()
{
    int n,t;
    scanf("%d%d",&n,&t);
    for(int i=1;i<=t;i++)
    {
        int x,y;
        scanf("%d%d",&x,&y);
        map[x][y]=1;
    }
    int ans=0;
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=n;j++)
        {
            if(!map[i][j])//如果没有树木,那正方形的边长就是它左上、上方、左方最小值的答案+1
            {
                dp[i][j]=min(dp[i-1][j-1],min(dp[i-1][j],dp[i][j-1]))+1;
                ans=max(ans,dp[i][j]);
            }
        }
    }
    printf("%d",ans);
    return 0;
}

——————————————————–分割线————————————————————————————————-

题目描述

在一个n*m的只包含0和1的矩阵里找出一个不包含0的最大正方形,输出边长。

输入输出格式

输入格式:
输入文件第一行为两个整数n,m(1<=n,m<=100),接下来n行,每行m个数字,用空格隔开,0或1.

输出格式:
一个整数,最大正方形的边长

输入输出样例

输入样例#1:
4 4
0 1 1 1
1 1 1 0
0 1 1 0
1 1 0 1
输出样例#1:
2

题解:(最大正方形):

#include<iostream>
#include<cstdio>
using namespace std;
int a[105][105];
int dp[105][105];
int main()
{
    int n,m;
    scanf("%d%d",&n,&m);
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
    int ans=0;                                                                           
    for(int i=1;i<=n;i++)
    {
        for(int j=1;j<=m;j++)
        {
            if(a[i][j])
            {
                dp[i][j]=min(dp[i-1][j-1],min(dp[i-1][j],dp[i][j-1]))+1;
                ans=max(ans,dp[i][j]);
            }       
        }
    }
    printf("%d",ans);
    return 0;
}
Big Barn 巨大的牛棚(usaco动规含测试数据) 立即下载

相关推荐

ACM-ICPC World Finals 世界总决赛 2012 题目和测试数据

ACM-ICPC World Finals 世界总决赛 2012 题目和测试数据

[DP]巨大的牛棚

目录   1.先看题 题目描述 输入 输出 样例输入 样例输出 2.解决 方法分析 方法落实 代码实现 1.先看题 题目描述 时间限制: 1 Sec  内存限制: 64 MB 农夫约翰想要在他的正方形农场上建造一座正方形大牛棚。他讨厌在他的农场中砍树,想找一个能够让他在空旷无树的地方修建牛棚的地方。我们假定,他的农场划分成 N x N 的方格。输入数据中包括有树的方格...

偶耶的博客 762

Centos7 XFS(dm-0):Internal error XFS_WANT_CORRUPTED_GOTO

在k8s的道路上我们都是小白,每天启动虚机都会遇到各种各样的问题,这不。部署的k8s虚机启动发现操作系统启动异常,提示如下报错信息。进入/dev/mapper目录下,查询目录下路径信息。可以通过对文件系统进行修复操作,操作如下。重启完成后虚机恢复正常登录。

hedao0515的专栏 4583

[USACO5.3]Big Barn (动态规划)

题目描述 农夫约翰想要在他的正方形农场上建造一座正方形大牛棚。他讨厌在他的农场中砍树,想找一个能够让他在空旷无树的地方修建牛棚的地方。我们假定,他的农场划分成 N x N 的方格。输入数据中包括有树的方格的列表。你的任务是计算并输出,在他的农场中,不需要砍树却能够修建的最大正方形牛棚。牛棚的边必须和水平轴或者垂直轴平行。 EXAMPLE 考虑下面的方格,它表示农夫约翰的农场,‘.'表示没有树的方格...

weixin_30877181的博客 205

RabbitMq安装

本文详细介绍了在CentOS7系统上离线部署RabbitMQ4.3.2的完整流程。主要内容包括:1)准备RabbitMQ安装包、Erlang依赖和socat网络工具;2)安装系统编译依赖并编译安装Erlang;3)部署RabbitMQ服务,配置环境变量和socat依赖;4)启用Web管理插件并创建管理员账号;5)配置防火墙放行端口;6)设置Systemd开机自启服务;7)提供常用运维命令。文档特别强调离线部署注意事项,包括socat依赖、版本兼容性、账号安全及主机名配置等问题,为生产环境部署提供完整解决方案

sinat_25821779的博客 323

ThingsBoard入门实战(二):ThingsBoard 设备接入

文章目录ThingsBoard 设备接入一、设备配置/设备类型二、设备三、设备接入HTTPCOAPMQTT四、下一步 ThingsBoard 设备接入 设备接入并不一定需要真正的设备,我们可以通过程序。或者命令来模拟设备,向平台发送信息。 这节我们先为用户分配一个设备,然后通过模拟设备命令更新设备的状态(遥测值)。 一、设备配置/设备类型 添加一个叫"路灯"的设备配置。 设备配置听起来比较抽象,可以认为是设备类型或者是设备类型的配置。实际上,ThingsBoard 中很多时候让选择设备类型,就是选的这个。

AIGC搞起 1万+

USACO巨大牛棚(DP)

农夫约翰想在他的正方形农场中建一个巨大的正方形牛棚。 他不愿意在农场中砍伐树木,因此,他想要找一片平坦的土地,可以让他不需伐木就可直接在那里进行牛棚的搭建。 为了达到这一目的,我们将他的农场划分为 N×N 个方格区域。 给定包含树木的方格区域的数量,以及这些区域的具体位置。 请你计算,他在不砍伐树木的情况下,最大可以建造多大的牛棚。 搭建牛棚时,牛棚的四个边必须是水平或垂直的。 下面是一个农场的示例,其中,包含树木的方格区域用 “#” 表示,不包含树木的方格区域用 “.” 表示,具体表示为: 1 2 3 4

qq_43738331的博客 368

详解相机的sensor工作原理

目录sensor成像原理拜尔马赛克变换(BAYER DEMOSAICING)维伦阵列摩尔纹 sensor成像原理 相机或摄像头使用数百万个微小的光腔(感光元件)来记录图像。 成像时,sensor将镜头投射来的光子储存为模拟电信号。 曝光完成后,相机关闭这些光腔(感光元件),然后通过测量模拟电信号的强度来评估每个腔中有多少光子掉入来计算数字电信号的数值。 然后模拟电信号转换为数字电信号,数字电信号的数值由位深度决定(RGB的位深度)。 最后,根据正在记录的文件格式(8位JPEG位0-255),可能会再次降低

路人coder 2万+

【Big Barn 巨大的牛棚】【转】

农夫约翰想要在他的正方形农场上建造一座正方形大牛棚。他讨厌在他的农场中砍树,想找一个能够让他在空旷无树的地方修建牛棚的地方。我们假定,他的农场划分成 N x N 的方格。输入数据中包括有树的方格的列表。你的任务是计算并输出,在他的农场中,不需要砍树却能够修建的最大正方形牛棚。牛棚的边必须和水平轴或者垂直轴平行。 格式 EXAMPLE 考虑下面的方格,它表示农夫约翰的农场,‘.'表示没有树的方

geng4512的专栏 1697

【教程4>第5章>第23节】基于FPGA的Gardner环实现——环路滤波器模块和Gardner环整体测试

1]黄凌.基于FPGA的QPSK全数字调制解调系统的设计与实现[D].南京航空航天大学[2025-02-02].DOI:10.7666/d.d166927.注意,这里包括一个NCO模块,一个内插模块,一个时偏误差检测模块,一个环路滤波器模块,在gardner环中,wk的反馈输入,变量为ww,从而构成了闭环。[4]李司.基于FPGA的数字接收机同步技术的研究与实现[D].北京交通大学[2025-02-02].DOI:10.7666/d.y1082455.:调整NCO的相位步长,控制采样时刻。

FPGA/MATLAB学习教程/源码/项目合作开发 853

34、Text2KGBench与GeoQuestions1089:知识图谱生成与地理空间问答的新进展

本文介绍了Text2KGBench和GeoQuestions1089在知识图谱生成与地理空间问答领域的最新进展。Text2KGBench提供了一个开放且可复现的基准,用于从文本生成知识图谱,并结合多个LLM模型和评估工具推动研究。GeoQuestions1089是目前最大的地理空间问答数据集,与GeoQA2系统结合,推动了地理空间问答系统的发展。文章还探讨了技术挑战和未来研究方向,包括多模态知识图谱生成和深度学习优化的地理空间问答系统。

css33的专栏 114

题解 P2701 【[USACO5.3]巨大的牛棚Big Barn】

题面 农夫约翰想要在他的正方形农场上建造一座正方形大牛棚。 他讨厌在他的农场中砍树,想找一个能够让他在空旷无树的地方修建牛棚的地方。 我们假定,他的农场划分成 N x N 的方格。输入数据中包括有树的方格的列表。你的任务是计算并输出,在他的农场中,不需要砍树却能够修建的最大正方形牛棚。 牛棚的边必须和水平轴或者垂直轴平行。 题意 给你一个图,要求找出图中符合规则的最大正方形。 题意同:P...

deji2217的博客 506

手机直连低轨卫星通信:架构、关键技术和未来展望

【摘 要】借助低轨卫星星座全时全域覆盖优势,手机直连卫星通信预期成为6G重要特征之一。首先介绍了手机直连卫星的测试验证、标准化与商业项目发展现状。其次,介绍了基于透明转发、部分可再生处理、完全可再生处理、集成接入和回传的四种手机直连低轨卫星网络架构及组网方式。通过分析手机直连低轨卫星网络场景下高移动性与大传输时延等带来的接入与传输问题,提出对地面移动通信体制进行适应性改进的关键技术方案。最后,探讨了未来手机直连低轨卫星发展发向和潜在思路。通过上述阐述与分析,提供未来发展手机直连低轨卫星通信的可行路径。【关

fzq0625的博客 1707

洛谷 P2701 [USACO5.3]巨大的牛棚Big Barn

洛谷 P2701 [USACO5.3]巨大的牛棚Big Barn Description 农夫约翰想要在他的正方形农场上建造一座正方形大牛棚。他讨厌在他的农场中砍树,想找一个能够让他在空旷无树的地方修建牛棚的地方。我们假定,他的农场划分成 N x N 的方格。输入数据中包括有树的方格的列表。你的任务是计算并输出,在他的农场中,不需要砍树却能够修建的最大正方形牛棚。牛棚的边必须和水平轴或...

aochongbi5356的博客 228

企业合规审查系统开发实战:基于知识图谱与深度学习的智能引擎构建(附完整Python代码)

动态合规监测:实时追踪法规变化并更新知识库智能合约审计:区块链智能合约的自动合规检查跨域知识融合:整合财务、法律、业务多维度数据可解释性增强:基于Attention机制生成合规审查依据。

理论都是虚的,代码才是王道。 456

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

洛谷 P1387 最大正方形 & P2701 [USACO5.3]巨大的牛棚Big Barn (求最大子正方形)

2019-06-11 题目: P1387 最大正方形 : https://www.luogu.org/problemnew/show/P1387     P2701 [USACO5.3]巨大的牛棚Big Barn : https://www.luogu.org/problemnew/show/P2701 题目均给出一个已知矩阵。 在该已知矩阵中寻找最大的一个子正方形。 方法:D...

weixin_30709635的博客 115

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

洛谷—— P2701 [USACO5.3]巨大的牛棚Big Barn

https://www.luogu.org/problem/show?pid=2701 题目背景 (USACO 5.3.4) 题目描述 农夫约翰想要在他的正方形农场上建造一座正方形大牛棚。他讨厌在他的农场中砍树,想找一个能够让他在空旷无树的地方修建牛棚的地方。我们假定,他的农场划分成 N x N 的方格。输入数据中包括有树的方格的列表。你的任务是计算并输出,在他的农场中,不需要砍...

agcozdwdfvds08078的博客 229

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

P2701 [USACO5.3]巨大的牛棚Big Barn(悬线法,扫描法,DP)

题目描述 农夫约翰想要在他的正方形农场上建造一座正方形大牛棚。他讨厌在他的农场中砍树,想找一个能够让他在空旷无树的地方修建牛棚的地方。我们假定,他的农场划分成 N x N 的方格。输入数据中包括有树的方格的列表。你的任务是计算并输出,在他的农场中,不需要砍树却能够修建的最大正方形牛棚。牛棚的边必须和水平轴或者垂直轴平行。 EXAMPLE 考虑下面的方格,它表示农夫约翰的农场,‘.'表示没有树的方格,‘#'表示有树的方格 1 2 3 4 5 6 7 8 1 . . . . . . . . 2 . # . .

tomjobs的博客 620

P2701 [USACO5.3]巨大的牛棚Big Barn

传送门(洛谷) 此题与最大正方形一模一样!! f[i][j]表示以i行j列最大正方形大小f[i][j]表示以i行j列最大正方形大小f[i][j]表示以i行j列最大正方形大小 具体分析 /************************* * Time 2019.7.28 * User mzg1824_TY * Algrothim 动态规划 *************************/ #...

便当口袋 266

洛谷P2701 [USACO5.3]巨大的牛棚Big Barn

对于不知道的f[i][j]——可以由f[i-1][j],f[i][j-1],f[i-1][j-1]得知。## 二维dp(洛谷P2701 [USACO5.3]巨大的牛棚Big Barn)f[i][j]表示以(i,j)为右下角:没有树的情况下最大正方形的边长。也就是在(i,j)这里向上和向左的f[i][j]个点形成的正方形。边界——f[i][j]=0 默认的。

xiongjunkaibj的博客 134

P2701 [USACO5.3] 巨大的牛棚 Big Barn

本文介绍了两种解决农场最大空旷正方形问题的动态规划方法。第一种正方形DP方法通过构建二维数组f[i][j]记录以(i,j)为右下角的最大正方形边长,状态转移方程为取左、上、左上三个方向最小值加1。第二种悬线法DP通过维护左、右、上三个方向的边界数组,动态计算每个位置能形成的最大矩形区域并取其最小边作为正方形边长。两种方法均能在O(n²)时间内解决问题,其中n为农场边长,适用于在带有障碍物的网格中寻找最大正方形区域的场景。

lqz2016的博客 159

[USACO5.3]巨大的牛棚Big Barn

题目背景 (USACO 5.3.4) 题目描述 农夫约翰想要在他的正方形农场上建造一座正方形大牛棚。他讨厌在他的农场中砍树,想找一个能够让他在空旷无树的地方修建牛棚的地方。我们假定,他的农场划分成 N x N 的方格。输入数据中包括有树的方格的列表。你的任务是计算并输出,在他的农场中,不需要砍树却能够修建的最大正方形牛棚。牛棚的边必须和水平轴或者垂直轴平行。 EXAMPLE 考虑下面...

weixin_30348519的博客 181
上一篇: 关于缘起
下一篇: codevs 2491 玉蟾宫(悬线法)
Loi_feather
博客等级 码龄10年 42粉丝 131原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值