【leetcode】最强边界条件
数组的边界
1144. 递减元素使数组呈锯齿状
给你一个整数数组 nums,每次 操作 会从中选择一个元素并 将该元素的值减少 1。
如果符合下列情况之一,则数组 A 就是 锯齿数组:
每个偶数索引对应的元素都大于相邻的元素,即 A[0] > A[1] < A[2] > A[3] < A[4] > ...
或者,每个奇数索引对应的元素都大于相邻的元素,即 A[0] < A[1] > A[2] < A[3] > A[4] < ...
返回将数组 nums 转换为锯齿数组所需的最小操作次数。
class Solution {public:int movesToMakeZigzag(vector<int>& nums) {if (nums.size() < 2) return 0;int s1 = 0;int s2 = 0;int N = nums.size();for (int i = 0; i < N; ++i) {int l = (i > 0) ? nums[i - 1] : INT_MAX;int r = (i < N - 1) ? nums[i + 1] : INT_MAX;if (i & 1) {s1 += max(0, nums[i] - min(l, r) + 1);} else {s2 += max(0, nums[i] - min(l, r) + 1); }}return min(s1, s2);}
};
批注:上述代码来自leetcode这位大神:
【leetcode】最强边界条件相关推荐
- LeetCode 970. 强整数
文章目录 1. 题目 2. 解题 2.1 暴力法 2.2 优化双重循环 1. 题目 给定两个正整数 x 和 y,如果某一整数等于 xi + yj,其中整数 i >= 0 且 j >= 0, ...
- leetcode 970. 强整数(Powerful Integers)
目录 题目描述: 示例 1: 示例 2: 解法: 题目描述: 给定两个正整数 x 和 y,如果某一整数等于 x^i + y^j,其中整数 i >= 0 且 j >= 0,那么我们认为该整数 ...
- Java实现 LeetCode 420 强密码检验器
420. 强密码检验器 一个强密码应满足以下所有条件: 由至少6个,至多20个字符组成. 至少包含一个小写字母,一个大写字母,和一个数字. 同一字符不能连续出现三次 (比如 "-aaa-&q ...
- 记录每日LeetCode 2299.强密码校验器II Java实现
题目描述: 如果一个密码满足以下所有条件,我们称它是一个 强 密码: 它有至少 8 个字符. 至少包含 一个小写英文 字母. 至少包含 一个大写英文 字母. 至少包含 一个数字 ...
- 2022-1-25 Leetcode 970.强整数
s.insert(1);//返回值为pair<set<int>::iterator, bool>//迭代器表示该元素的位置 重点在于如果其中一个是 1 或者是 0 ,应该如何处 ...
- LeetCode 官方强推的算法笔记,是有什么与众不同的魅力?
程序员到底需不需要学习算法?这个问题被争论的次数绝对不亚于"Java 是不是最好的语言""VIM 和 Emacs 谁是最好的编辑器""程序员是不是需要 ...
- LeetCode官方强推的算法笔记,是有什么与众不同的魅力?
程序员到底需不需要学习算法?这个问题被争论的次数绝对不亚于"Java是不是最好的语言""VIM和Emacs谁是最好的编辑器""程序员是不是需要学习数学 ...
- LeetCode题解目录
最新更新于2020.11.27 前往LeetCode主页. 前往GitHub源码.(服务器原因,暂停同步.) 前往码云主页. 已解决 456/1878 - 简单353 中等 90 困难 13 2020 ...
- leetcode刷题java、c++、go语言三合一版本 谷歌师兄的刷题笔记、东哥的算法小抄、 Guide哥的Java面试突击版
不久前火爆 GitHub 的 LeetCode 中文刷题手册,分享给大家,让正在找工作的朋友能够快速找到心仪的offer! <LeetCode Cookbook>目前已经收录了 520 道 ...
最新文章
- Spring容器和Bean加载
- 通俗理解并行性和并发性的区别
- yum安装软件包提示Error Downloading Packages解决方法
- python 字符串补齐
- 一致吗 驱动_外国不过春节?AMD驱动再更新,解决BUG,游戏不闪退,重启不黑屏...
- python基础-------python2.7教程学习【廖雪峰版】(二)
- Hadoop入门(八)Mapreduce高级shuffle之Partitioner
- 解决WP表前缀更换后出现的You do not have sufficient permission
- 又是同样的剧情!华为Mate Xs被黄牛炒至4万元上下
- Hexo+next的侧边栏背景与字体颜色设置方法
- Javaweb实现在线预览word文件
- php+网络测速,网络测速步骤
- javascript scope chain
- 【雪野实训记录】Oracle数据库 T4作业——事务和数据库对象
- ios5.1.1旧版软件下载_爱思助手V7.98.15 版发布:新增IPA签名旧版本应用下载等新功能...
- 设计模式之六大设计原则【入门】
- 用Chrome浏览器模拟手机,android,iphone,ipad访问网站
- 如何用python实现地图定位_GPS 测试汇总和python GPS 导航地图实现
- 一文带你读懂,这三个交换机层级的区别和联系。
- 怎么接收layui上传的文件_如何接收layui上传excel上传及php处理【】
热门文章
- 线性判别分析(Linear Dicriminant Analysis)参数推导记录备忘
- ggplot2分面柱状图柱子比例一致_R语言柱状图
- android des ecb加密_Android逆向 | 基础知识篇 01
- SparkStreaming 入门案例之wordcount
- 二极管区分极性以及驱动原理
- 【JavaScript回顾】闭包
- 使用k-近邻算法改进约会网站的配对效果
- [4/10]指定结进程名称的命令taskkill.exe
- Linux下进程信息的深入分析
- windows server2012 domain user权限配置