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

房产网站建设网站推广江干网站建设

房产网站建设网站推广,江干网站建设,大连建设网水电官网查询,中国建设教育协会网站查题目要求 给定一个整数数组 arr#xff0c;求 min(b) 的总和#xff0c;其中 b 的范围涵盖 arr 的每个#xff08;连续#xff09;子数组。由于答案可能很大#xff0c;因此返回答案模数 Example 1: Input: arr [3,1,2,4] Output: 17 Explanation: Subarrays are [3]…题目要求 给定一个整数数组 arr求 min(b) 的总和其中 b 的范围涵盖 arr 的每个连续子数组。由于答案可能很大因此返回答案模数 Example 1: Input: arr [3,1,2,4] Output: 17 Explanation: Subarrays are [3], [1], [2], [4], [3,1], [1,2], [2,4], [3,1,2], [1,2,4], [3,1,2,4]. Minimums are 3, 1, 2, 4, 1, 1, 2, 1, 1, 1. Sum is 17.Example 2: Input: arr [11,81,94,43,3] Output: 444 思路 找出数组的全部组合数加和并返回mod()之后的结果。我们只需要找出所有的组合然后加到一起。但是这样至少需要O(N^2)的时间复杂度会超时。 然后又想到不需要真正求出子数组只需要求出子数组的最小值即可。同时发现子数组不能交换顺序。因此想到用单调栈解决本题。 左侧范围我们需要找出在 arr[i] 左侧的第一个比 arr[i] 小的元素。设这个位置为 L。这意味着从 L1 到 i 的所有位置arr[i] 都是最小的。 右侧范围类似地我们找出在 arr[i] 右侧的第一个比 arr[i] 小的元素。设这个位置为 R。这意味着从 i 到 R-1 的所有位置arr[i] 都是最小的。 知道这两个位置后我们可以计算以 arr[i] 为最小值的子数组数量。这个数量等于 arr[i] 左侧和右侧可扩展的位置数的乘积。 特别注意处理数值相同时的情况。只需要在处理左边界或者有边界时候加入一个等号即可。始终认为出现相同值时右边的更小。 代码 class Solution { public:int sumSubarrayMins(vectorint arr) {stackint s;int result 0;int n arr.size();vectorint left(n), right(n);long long mod 1000000007; // 10^9 7for (int i 0; i n; i) {while (!s.empty() arr[s.top()] arr[i]) {right[s.top()] i;s.pop();}s.push(i);}while (!s.empty()) {right[s.top()] n;s.pop();}for (int j n-1; j 0; --j) {while (!s.empty() arr[s.top()] arr[j]) {left[s.top()] j;s.pop();}s.push(j);}while (!s.empty()) {left[s.top()] -1;s.pop();}for (int i 0; i n; i) {cout i left[i] right[i] arr[i] endl;result ((long long)(i - left[i]) * (right[i] - i) % mod * arr[i] % mod) % mod;result % mod;}return result;} }; 特别感谢GPT的Code Tutor这个题目的思路和代码是在它的指导下写出来的还挺好用的。 时空复杂度
http://www.pierceye.com/news/147089/

相关文章:

  • 做购物网站哪个cms好用网络规划与设计就业前景
  • wordpress仿站工具网站建设jw100
  • 网站推广过程叙述关键词歌词
  • vip影视网站如何做appwordpress centos查看目录
  • 网站怎么套模板山西seo博客
  • 好看的手机网站推荐新建的网站 找不到
  • 网站站内搜索怎么做seo搜索优化
  • 建设部网站 测绘规章pc网站手机网站
  • 建网站如何赚钱vs哪个版本做网站好
  • 新衡阳网站游戏软件开发公司简介
  • 湖南基础建设投资集团网站做体育最好的网站
  • 上海php网站开发公司wordpress 邮件认证
  • 教做香肠的网站张家港专业网站建设
  • 园林建设网站营销型网站的建站步骤是什么意思
  • 招聘求职网站html模板正规的创业商机网
  • 预付网站建设费会计处理哪里建网站好
  • 做免费网站艺术学院网站建设管理办法
  • 做网站贵吗手机网站wap
  • linux建立网站做网站的应该怎么发广告
  • wordpress使用端口百度seo排名软
  • 用英文字母做网站关键词个人网站的设计与实现专业论文图像处理工具
  • 重庆企业网站推广流程php网站开发技术训练心得
  • 汽车销售网站学校建网站
  • 两台电脑一台做服务器 网站潍坊专业网站建设多少钱
  • 青岛科技街网站建设安徽 网站开发
  • 黑糖不苦建设的网站wordpress获取文章图片不显示
  • 美食网站建设的功能免费做简历的网站
  • 网站建设公司谁管手机如何创建网站
  • 可以自己做网站优化吗最好用的wordpress主题
  • 瓜子二手车网站开发智慧团建注册登记入口