当前位置: 首页 > news >正文

leetcode 1351. 统计有序矩阵中的负数 简单

给你一个m * n的矩阵grid,矩阵中的元素无论是按行还是按列,都以非严格递减顺序排列。 请你统计并返回grid负数的数目。

示例 1:

输入:grid = [[4,3,2,-1],[3,2,1,-1],[1,1,-1,-2],[-1,-1,-2,-3]]输出:8解释:矩阵中共有 8 个负数。

示例 2:

输入:grid = [[3,2],[1,0]]输出:0

提示:

  • m == grid.length
  • n == grid[i].length
  • 1 <= m, n <= 100
  • -100 <= grid[i][j] <= 100

进阶:你可以设计一个时间复杂度为O(n + m)的解决方案吗?

分析:由于整个矩阵的行和列都是严格按照非递减顺序排列的,可以按行顺序遍历整个矩阵,找到第一个值为负的位置,它和它的右边值均为负,统计所有行即可得到答案。

时间复杂度为 O(n+m) 的方案,即最多遍历一次行和一次列。由于整个矩阵的行和列都是严格非递减顺序排列,可知一个点的值如果为负,那么它的右边和下边的所有值均为负数。可以从矩阵的最右上方的点开始,先向左找到第一个值为负,且它的左边的数为非负,接着向下一行,继续向左查找,直到找到左边没有数或者最下方一行为止。

可以观察到上面的方案,点的移动路线是从右上方向左下方前进,最多移动的次数就是 n+m 次。

int countNegatives(int** grid, int gridSize, int* gridColSize) { int n=gridSize,m=gridColSize[0],ans=0; int x=0,y=m-1; while(x<n&&y>=0) { ans+=m-1-y; while(y>=0&&grid[x][y]<0) ans++,y--; if(y==-1)ans+=(n-x-1)*m; else x++; } return ans; }
http://www.zskr.cn/news/171160.html

相关文章:

  • 7.C++入门:类和对象|日期类的实现|取地址运算符重载|const成员函数|初始化列表|类型转换
  • C 函数指针与回调函数
  • AI论文写作神器:6大工具一站式搞定选题到降重,1小时完成初稿效率翻倍!
  • 生成何以智能?——基于六十四卦状态空间的原理认知新范式
  • 利用PyTorch-CUDA-v2.6镜像实现大模型Token生成加速
  • Anaconda Prompt常用命令速查表(PyTorch专用)
  • Markdown甘特图规划PyTorch项目开发进度
  • 【毕业设计】基于springboot的大学生英语学习平台(源码+文档+远程调试,全bao定制等)
  • LeetCode 459 - 重复的子字符串
  • 身份威胁检测与响应(上)
  • C++ 基本的输入输出
  • 【毕业设计】基于springboot的宾馆客房管理系统客房管理 房型配置: 标准间、套房等类型的名称、价格、床型(源码+文档+远程调试,全bao定制等)
  • Jupyter Notebook版本控制实践:配合Git管理代码
  • 082300141 吴昕昀团队工作汇报
  • 【课程设计/毕业设计】基于Springboot的在线英语阅读平台的设计与实现基于springboot的大学生英语学习平台【附源码、数据库、万字文档】
  • Python3 日期和时间处理详解
  • 史上最强X3D CPU!9950X3D2首次曝光:双3D V-Cache、192MB缓存
  • MATLAB仿真与建模基础实战教程(从入门到实操,附完整可运行案例)
  • 2025年哈尔滨正规的地铁广告价格,公交广告/户外led大屏广告/广播电台广告/地铁广告/电视台广告地铁广告公司排行榜单 - 品牌推荐师
  • 【课程设计/毕业设计】基于SpringBoot的供应链管理系统的设计与实现供应链运营中采购、仓储、物流、销售环节【附源码、数据库、万字文档】
  • Conda环境导出为yml文件:共享PyTorch配置的最佳方式
  • 震惊!AI应用架构师必知,构建企业级AI治理框架的绝世指南
  • 2025年国内有实力的层板货架供应厂家排行榜,穿梭式货架/中型货架/仓库货架/横梁货架,层板货架品牌口碑推荐 - 品牌推荐师
  • VPC 内相关组件详细介绍
  • Jupyter Notebook保存检查点:防止PyTorch训练中断丢失
  • Java毕设项目:基于SpringBoot的供应链管理系统的设计与实现(源码+文档,讲解、调试运行,定制等)
  • 计算机Java毕设实战-基于springboot的船舶物料供应商交易平台的设计与实现基于springboot+vue的船舶物料供应商交易平台【完整源码+LW+部署说明+演示视频,全bao一条龙等】
  • Markdown表格美化:展示PyTorch模型性能对比数据
  • GitHub Actions自动测试PyTorch环境的CI/CD配置
  • 2025年国内排行前列的横梁货架生产厂家推荐排行榜单,层板货架/阁楼货架/中型货架/仓储货架,横梁货架订制厂家推荐排行榜 - 品牌推荐师