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

二维矩阵子集的最大值

登录—专业IT笔试面试备考平台_牛客网

正好遇到了

对于一维,我们只需要贪一次

int ans = -1E9;
int suf = -1E9;
for (int i = 0; i < n; i++) {if (i && (a[i] - a[i - 1]) % 2 == 0) {suf = 0;}suf = std::max(suf, 0) + a[i];ans = std::max(ans, suf);
}

ans就是最大值.

对于二维我们要把这个公式用四次

    ll res1 = -1e9, ans1 = -1e9;for (int i = 0; i < n; i++) {res1 = std::max(0LL, res1)+a[i];ans1 = std::max(ans1, res1);}ll res2 = -1e9, ans2 = -1e9;for (int i = 0; i < m; i++) {res2 = std::max(0LL, res2) + b[i];ans2 = std::max(ans2, res2);}ll res3 = 1e9, ans3 = 1e9;for (int i = 0; i < n; i++) {res3 = std::min(0LL, res3) + a[i];ans3 = std::min(res3, ans3);}ll res4 = 1e9, ans4 = 1e9;for (int i = 0; i < m; i++) {res4 = std::min(0LL, res4) + b[i];ans4 = std::min(res4, ans4);}//1,3是a,2,4是b,1,2,1,4,3,2,3,4ll ans5 = std::max(ans1 * ans2, ans1 * ans4);ans5 = std::max(ans5, ans3 * ans4);ans5 = std::max(ans5, ans3 * ans2);

排列组合求最大值

http://www.lryc.cn/news/305286.html

相关文章:

  • 瑞_23种设计模式_装饰者模式
  • 使用Python制作进度条有多少种方法?看这一篇文章就够了!
  • SpringBoot-2.7.6基于SLF4J日志门面的日志框架切换
  • MongoDB聚合运算符:$binarySize
  • Android的ViewModel
  • Android 圆环带刻度条进度动画效果实现
  • 94. 二叉树的中序遍历
  • 汽车信息安全概述
  • Linux——基础IO
  • 数据结构-数组
  • 【Java程序设计】【C00279】基于Springboot的智慧外贸平台(有论文)
  • C#,计算几何,计算机图形学(Computer Graphics)洪水填充算法(Flood Fill Algorithm)与源代码
  • C# 实现网页内容保存为图片并生成压缩包
  • C#_事件简述
  • C语言:指针(一)
  • 【leetcode刷题之路】面试经典150题(3)——哈希表+区间
  • 群晖NAS DSM7.2.1安装宝塔之后无法登陆账号密码问题解决
  • 9、使用 ChatGPT 的 GPT 制作自己的 GPT!
  • 企业微信应用开发:使用Cpolar域名配置进行本地接口回调的调试指南
  • js 可选链运算符(?.)空值合并运算符(??)逻辑空赋值运算符(??=)
  • vue 手势解锁功能
  • 介绍 CI / CD
  • Stable Diffusion 3 Early Preview发布
  • 【解决(几乎)任何机器学习问题】:特征选择
  • 24 双非计算机秋招总结
  • 用友NC65与用友NCC对接集成NC65-凭证列表查询打通凭证新增
  • 【初中生讲机器学习】12. 似然函数和极大似然估计:原理、应用与代码实现
  • 【达梦数据库】查看pesg回滚段信息的视图和SQL
  • UML---活动图
  • 编程笔记 Golang基础 018 常量与变量