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

芜湖网站建设价格网站建设共享ip

芜湖网站建设价格,网站建设共享ip,什么是网站流量优化,网站后台管理系统界面文章目录 题目[](https://leetcode.cn/problems/maximize-sum-of-array-after-k-negations/)算法原理源码总结 题目 如上图,k是取反的次数,在数组【4,-1,3】中,当k 1,把-2取反为2,和为9;在数组…

文章目录

  • 题目[](https://leetcode.cn/problems/maximize-sum-of-array-after-k-negations/)
  • 算法原理
  • 源码
  • 总结

题目

在这里插入图片描述
在这里插入图片描述
如上图,k是取反的次数,在数组【4,-1,3】中,当k = 1,把-2取反为2,和为9;在数组【3,-1,0,2】中,当k = 3,-1取反为1,再把2取反m-k=2次,还是2,和为6.

算法原理

分情况讨论:
设:整个数组中负数的个数是m 个
在这里插入图片描述

(1)m>k;把前k小负数,转化为正数(如下图)
在这里插入图片描述

(2)m==k,把所有的负数转化成正数(如下图)
在这里插入图片描述

(3)m<k;先把所有的负数变成正数;在根据k-m的奇偶性,偶数情况;直接忽略;奇数情况:挑选当前数组中最小的数,变成负数(如下图)。
在这里插入图片描述

源码

class Solution {
public:int largestSumAfterKNegations(vector<int>& nums, int k) {int  m =0,minElem = INT_MAX, n =nums.size();for(auto x :nums){if(x < 0) m++;minElem = min(minElem,abs(x));//求绝对值最小的那个数}//分类讨论int ret = 0;if(m > k){sort(nums.begin(),nums.end());for(int i = 0;i<k;i++){ret+= -nums[i];}for(int i = k;i<n;i++){ret+= nums[i];}}else{//把所有的负数变成正数for(auto x :nums) ret+=abs(x);if((k-m) % 2){ret-=minElem*2;}}return ret;}
};

总结

以上就是1005 K 次取反后最大化的数组和(贪心),喜欢博主写的内容可以一键三连支持博主。

http://www.dtcms.com/wzjs/577829.html

相关文章:

  • 深圳做h5网站游戏推广怎么做挣钱
  • 制作网站免费建站新品手机发布会一览表
  • 网站seo其应用深圳建站公司
  • 淮安网站建设公司ppt下载网站哪个好
  • wordpress如何做导航网站各大网站推荐
  • 做百度移动端网站软件嘉兴市建设局网站
  • 黑群晖做php网站林州二建集团建设有限公司网站
  • 宁夏网站建设优化免费做全网解析电影网站赚钱
  • 苏州网站建设方案策划把自己做的网站传到网上
  • 网站建设力洋门户网站建设与开发
  • 建网站的客户公司起名免费网
  • 外贸网站违反谷歌规则建设网站的服务费是指什么意思
  • 做网站最便宜大庆+网站建设
  • 在建设部网站上的举报个人网站设计目的
  • 申请一个免费的网站空间wordpress菜单里想在添加一个菜单
  • 福州mip网站建设做网站开发能挣钱
  • 网站做301好不好建设官方网站需要那些人员
  • 图书管理系统网站开发绪论信息技术教案 建设我们的网站
  • 公司网站一年多少钱中企动力网站建设合同
  • 更好的网站制作wordpress源神
  • 做性视频网站有哪些鲜花网站建设的利息分析
  • 怎么创办个人网站网站流量怎么变现呢
  • 宁波网站建设设计至诚服务西宁微信网站建设
  • 网站添加外链禅城网站设计
  • 精品网站建设教程给领导发网站建设可行性方案邮件怎么写
  • 国内知名的网站建设公司有哪些手机网站制作
  • 邢台公司网站建设大学专业分类目录
  • 网站建设维护是啥意思wordpress仿国际
  • 网站建设网络推广网站开发可能存在的困难
  • 低代码开发平台公司seo教程网