第十四屆藍橋杯青少組C++選拔賽[2023.2.12]第二部分編程題(4、最大空白區)

參考程序1:

#include <bits/stdc++.h>
using namespace std;int main() {int N, M;cin >> N >> M;vector<vector<int>> grid(N, vector<int>(M));for (int i = 0; i < N; ++i)for (int j = 0; j < M; ++j)cin >> grid[i][j];// 構建二維前綴和,sum[i][j] 表示從 (0,0) 到 (i-1,j-1) 的格子中有多少個1vector<vector<int>> sum(N+1, vector<int>(M+1, 0));for (int i = 1; i <= N; ++i) {for (int j = 1; j <= M; ++j) {sum[i][j] = sum[i-1][j] + sum[i][j-1] - sum[i-1][j-1] + grid[i-1][j-1];}}int maxArea = 0;// 枚舉所有左上角 (r1,c1) 和右下角 (r2,c2)for (int r1 = 0; r1 < N; ++r1) {for (int c1 = 0; c1 < M; ++c1) {for (int r2 = r1; r2 < N; ++r2) {for (int c2 = c1; c2 < M; ++c2) {// 使用前綴和快速計算矩形內的格子和int total = sum[r2+1][c2+1] - sum[r1][c2+1] - sum[r2+1][c1] + sum[r1][c1];if (total == 0) { // 全是空白int area = (r2-r1+1) * (c2-c1+1);maxArea = max(maxArea, area);}}}}}cout << maxArea << "\n";return 0;
}

參考程序2:

#include <bits/stdc++.h>
using namespace std;int main() {int N, M;cin >> N >> M;vector<vector<int>> grid(N, vector<int>(M));for (int i = 0; i < N; ++i)for (int j = 0; j < M; ++j)cin >> grid[i][j];int maxArea = 0;// 枚舉上邊界 r1for (int r1 = 0; r1 < N; ++r1) {vector<int> col(M, 1); // 初始化每列為全空白(有效列)// 枚舉下邊界 r2 >= r1for (int r2 = r1; r2 < N; ++r2) {// 更新每列是否在 r1~r2 行之間全是空白for (int c = 0; c < M; ++c) {if (grid[r2][c] == 1) col[c] = 0; // 有草則列無效}// 找 col 中最長連續 1 的長度int width = 0;int maxWidth = 0;for (int c = 0; c < M; ++c) {if (col[c] == 1) width++;else width = 0;maxWidth = max(maxWidth, width);}int height = r2 - r1 + 1;maxArea = max(maxArea, maxWidth * height);}}cout << maxArea << "\n";return 0;
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/96571.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/96571.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/96571.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

文心一言-Agent崗三輪面試全記錄

面經分享&#xff5c;文心一言-Agent崗三輪面試全記錄 前段時間面試了 文心一言團隊 - 大模型 Agent 崗&#xff0c;三輪面試下來感觸頗多。整體來說&#xff0c;文心團隊的面試節奏偏“循序漸進”&#xff1a;一面看基礎&#xff0c;二面看綜合素養&#xff0c;三面看思考深度…

【大前端++】幾大特征

大綱 大前端業務模型結構如下&#xff1a; 服務后臺大前端原生系統可定制的終端硬件 1、業務的起點技術結構基于跨平臺前端框架 Electronvue/Rect/其他web框架js/ts FlutterDartvue/Rect/其他web框架js/ts 其他前端框架結構 2、有特定的業務使用場景 人臉識別考勤 數字…

計算機網絡---網絡體系結構

文章目錄1. 網絡的概念1.1 什么是計算機網絡1.2 簡單的計算機網絡1.3 互聯網&#xff08;或因特網&#xff0c;Internet&#xff09;1.4 計算機網絡、互連網和互聯網三者的區別1.5 總結2. 網絡的組成、功能2.1 組成2.1.1 從組成部分看2.1.2 從工作方式看2.1.3 從邏輯功能看2.2 …

機器學習超參數調優全方法介紹指南

本篇文章Master Hyperparameter Tuning in Machine Learning適合希望深入了解超參數調優的讀者。文章的亮點在于介紹了多種調優方法&#xff0c;如手動搜索、網格搜索、隨機搜索、貝葉斯優化和元啟發式算法&#xff0c;并通過實際案例展示了這些方法在復雜模型&#xff08;如CN…

怎么降低 AIGC 生成率?

怎么降低 AIGC 生成率&#xff1f;市面上那些號稱 "AI 降重神器" 的工具真的有用嗎&#xff1f;想和大家聊聊我的看法 ——人工修改生成內容&#xff0c;可能是目前最靠譜的辦法。一、AI 降重工具的實際效果現在很多工具說能通過 AI 降低 AIGC 生成率&#xff0c;原理…

心磁圖 QRS 參數在 Brugada 綜合征心律失常風險分層中的應用

研究背景Brugada 綜合征是一種與致命性室性心律失常及心源性猝死風險相關的遺傳性心臟離子通道病&#xff0c;其典型特征為右胸導聯&#xff08;V1-V3&#xff09;出現特征性ST段抬高&#xff08;1型、2型或3型 Brugada 心電圖表現&#xff09;。然而&#xff0c;靜息心電圖呈現…

Futuring robot旗下家庭機器人F1將于2025年面世

2025年9月10日&#xff0c;張翼二次創業的機器人公司Futuring Robot發布了第一款家庭服務機器人F1。這款F1機器人不僅具備端茶送水、物品遞送、家庭整理等日常服務能力&#xff0c;還深度融合了多項教育輔助功能&#xff0c;如學習陪伴、棋類對弈、作業進度管理等&#xff0c;旨…

User類CRUD實現

代碼&#xff1a; WYend/Myblog_springbook3: 我的第一個個人網站&#xff08;后端版&#xff09; 隨時更新 一、數據庫的構建 交給ai 二、各類注解 Lombok注解 Data&#xff1a; 自動生成類的getter、setter、toString()、equals()、hashCode()方法適用于實體類&#xff…

【Linux | 網絡】數據鏈路層

一、以太網1.1 認識以太網1.2 以太網幀格式1.3 MAC地址1.3.1 認識MAC地址1.3.2 MAC地址的類型1.3.3 MAC地址 VS IP地址1.4 局域網如何通信1.5 局域網數據碰撞1.5.1 數據碰撞1.5.2 劃分碰撞域&#xff08;交換機&#xff09;二、ARP協議2.1 ARP協議的作用2.2 ARP數據報的格式2.3…

Google Ads廣告驗證全攻略:如何借助動態住宅IP精準投放?

在競爭激烈的數字廣告領域&#xff0c;Google Ads扮演著至關重要的角色。然而&#xff0c;隨著廣告政策的不斷更新和平臺對廣告質量要求的提高&#xff0c;廣告驗證已成為許多廣告主繞不開的環節。同時&#xff0c;如何實現精準投放&#xff0c;將廣告觸達最相關的目標受眾&…

鴻蒙Next Web組件生命周期詳解:從加載到銷毀的全流程掌控

想要精通鴻蒙應用開發&#xff1f;Web組件的9大生命周期回調是你必須掌握的上帝視角&#xff01;在鴻蒙應用開發中&#xff0c;Web組件是我們加載本地或在線網頁的強大工具。它提供了完整的生命周期回調體系&#xff0c;讓開發者能夠精準感知網頁加載的每個階段&#xff0c;從而…

python學習進階之異常和文件操作(三)

文章目錄1.程序異常2.文件操作3.json操作1.程序異常 1.1 異常 異常概念&#xff1a; 程序在運行時, 如果Python解釋器遇到到一個錯誤, 則會停止程序的執行, 并且提示一些錯誤信息, 這就是異常 拋出異常&#xff1a; 程序停止執行并且提示錯誤信息這個動作, 通常稱之為拋出(ra…

NodeJS 8 ,從 0 到 1:npm 包發布與更新全流程指南( 含多場景適配與踩坑總結 )

目錄 前言 一、準備工作 1.1 開發環境搭建 1.1.1 環境安裝 1.1.2 配置問題 1.2 賬號注冊 1.2.1 賬號注冊&#xff08;兩種方式&#xff09; 1.2.2 登錄驗證 1.2.3 個人設置 1.2.4 安全配置 1.3 初始配置 1.3.1 初始項目目錄 1.3.2 關鍵字段詳解 1.3.3 手動完善 二…

BERT中文預訓練模型介紹

bert-base-chinese 是由谷歌基于 BERT&#xff08;Bidirectional Encoder Representations from Transformers&#xff09;模型預訓練得到的適用于中文任務的模型版本。以下從多個方面對其進行詳細解釋&#xff1a; 模型概述 BERT 是一種基于 Transformer 架構的預訓練語言模型…

Archon01-項目部署

Archon01-項目部署當前已經參考B站視頻針對代碼進行修改&#xff0c;可直接使用BigModel智譜的GLM-4.5替換openAI進行使用&#xff0c;部署環境&#xff08;Python3.12-slim環境&#xff09;1-核心知識點關鍵字&#xff1a; Docker Supabase Archon BigModel Python1&#xff0…

HarmonyOS時間戳完全指南:DevEco Studio中的時間處理與實戰應用

時間戳是現代應用開發中不可或缺的基礎功能&#xff0c;無論是日志記錄、數據同步、緩存管理還是狀態追蹤都離不開時間戳的支持。本文將深入探討在DevEco Studio中如何處理和使用時間戳&#xff0c;并提供豐富的實戰示例。一、時間戳基礎概念什么是時間戳&#xff1f;時間戳&am…

論文筆記:On the Biology of a Large Language Model

《關于大型語言模型的生物學》&#xff08;On the Biology of a Large Language Model&#xff09;的文章&#xff0c;深入探究了 Anthropic 公司 Claude 3.5 Haiku 模型的內部工作機制。研究人員將理解語言模型比作生物學研究&#xff0c;旨在揭示其復雜行為背后的“神經回路”…

TCP/IP、HTTP 和 HTTPS簡介

我們來系統地介紹一下 TCP/IP、HTTP 和 HTTPS。它們之間的關系可以概括為&#xff1a;??HTTP 和 HTTPS 是運行在 TCP/IP 基礎網絡架構之上的具體應用協議??。為了更直觀地理解它們之間的關系&#xff0c;我們可以參考下面的網絡分層模型&#xff1a;flowchart TDsubgraph A…

【30】C#實戰篇——獲取路徑下的文件名(不包含路徑和擴展名),文件名由連續的數字編號+連續的字母編號組成,并分離出文件名數字部分和英文部分

文章目錄1 要求2 分析 與 實現1 要求 寫一個函數&#xff0c;獲取路徑下的文件名&#xff08;不包含路徑和擴展名&#xff09;&#xff0c;并分離出文件名fileName &#xff0c;文件名編號SN&#xff0c;文件名前綴WMT &#xff1b; 輸入文件路徑&#xff0c;解析出不帶"…

EasyExcel部署Docker缺少字體報錯

報文 java.lang.NullPointerException: nullat sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1264)at sun.awt.FontConfiguration.readFontConfigFile(FontConfiguration.java:219)at sun.awt.FontConfiguration.init(FontConfiguration.java:107)at sun.awt.…