代码随想录算法训练营第34天| 1005.K次取反后最大化的数组和 134. 加油站 135. 分发糖果

chatgpt/2023/10/4 7:06:12
  • 今日学习的文章链接,或者视频链接

第八章 贪心算法 part03

  • 自己看到题目的第一想法

  • 看完代码随想录之后的想法

1005:

class Solution {
public:static bool cmp(int a, int b) {return abs(a) > abs(b);}int largestSumAfterKNegations(vector<int>& nums, int k) {sort(nums.begin(),nums.end(),cmp);for(auto i = 0;i<nums.size();i++){if(nums[i]<0&&k>0){nums[i]*=-1;k--;}}if(k%2==1){nums[nums.size()-1]*=-1;}int result =0;for(auto num:nums){result+=num;}return result;}
};

134

class Solution {
public:int canCompleteCircuit(vector<int>& gas, vector<int>& cost) {int curSum = 0;int totalSum = 0;int start = 0;for(auto i = 0 ; i<gas.size();i++){curSum += gas[i] - cost[i];totalSum += gas[i] - cost[i];if(curSum<0){start = i+1;curSum = 0;}}if(totalSum<0) return -1;return start;}
};

135

class Solution {
public:int candy(vector<int>& ratings) {vector<int> candy(ratings.size(),1);//右<左for(int i = 1;i<ratings.size();i++){if(ratings[i]>ratings[i-1]){candy[i] = candy[i-1]+1;}}//右>左for(int i =ratings.size()-2;i>=0;i--){if(ratings[i]>ratings[i+1]){candy[i] = max(candy[i+1]+1,candy[i]);}}int result = 0;for(auto c:candy){result+=c;}return result;}
};
  • 自己实现过程中遇到哪些困难

  • 今日收获,记录一下自己的学习时长

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-5312934.html

如若内容造成侵权/违法违规/事实不符,请联系郑州代理记账网进行投诉反馈,一经查实,立即删除!

相关文章

2、认识O(nlogn)的排序

归并排序 分两半,谁小拷贝谁 public class Test{public static void mergeSort(int[] arr) {if (arr == null || arr.length < 2) {return;}mergeSort(arr, 0, arr.length - 1);}public static void mergeSort(int[] arr, int l, int r) {if (l == r) {return;}int mid =…

Visual Studio 2022 中使用scanf报错的解决方法(一次性解决)

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏:《C语言初阶篇》 《C语言进阶篇》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 文章目录 &#x1f4cb; 前言&#x1f4ac; scanf的报错&#x1f4ad; 解决方法一 &#xff08;临时解决&#xff09; &am…

微服务项目,maven无法加载其他服务依赖

微服务项目&#xff0c;导入了工具类工程&#xff0c;但是一直报错&#xff0c;没有该类&#xff0c; 检查maven 这里的Maven的版本与idea版本不匹配可能是导致依赖加载失败的最重要原因 检查maven配置&#xff0c;我这是原来的maven&#xff0c;home 修改之后,就不报错了

批量生成ChunJun json任务脚本

最近在研究chunjun&#xff0c;它是一款稳定、易用、高效、批流一体的数据集成框架。一直在用chunjun做数据抽取测试&#xff0c;json任务重复地在写&#xff0c;感觉十分浪费时间&#xff0c;于是想写个自动生成json脚本。 1.设计模板 模板通过excel设计&#xff0c;主要记录…

【Qt】利用Tool Button控件创建下拉菜单按钮

功能描述 利用qt进行界面设计和开发&#xff0c;创建下拉按钮。 详细实现 1、在qt侧工具栏利用设计打开.ui文件 2、创建按钮 创建一个Tool Button按钮&#xff0c;并在属性窗口中的QToolButton栏中选中MenuButtonPopup属性。 3、创建action 在Action编辑器创建对应的ac…

java 实现 AES 加解密

package com.dechnic.tfoms.util;import org.apache.shiro.crypto.hash.Sha256Hash; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import sun.misc.BASE64Decoder; import sun.misc.BASE64Encoder;import javax.crypto.BadPaddingException; import javax.cryp

Java开发工具MyEclipse发布v2023.1.2,今年第二个修复版!

MyEclipse一次性提供了巨量的Eclipse插件库&#xff0c;无需学习任何新的开发语言和工具&#xff0c;便可在一体化的IDE下进行Java EE、Web和PhoneGap移动应用的开发&#xff1b;强大的智能代码补齐功能&#xff0c;让企业开发化繁为简。 MyEclipse v2023.1.2官方正式版下载 …

单行|多行 文本溢出省略一次说清楚

简介 项目中有时需要将单行文本溢出隐藏&#xff0c;有时需要将多行文本进行隐藏&#xff0c;使用省略号将他们代替&#xff0c;那么这些都则怎么实现呢&#xff1f; 单行文本溢出隐藏 white-space:nowrap;//文本不换行 overflow: hidden;//溢出隐藏 text-overflow: ellipsis;…
推荐文章