辣鸡刘的Leetcode之旅4 (Weekly Contest 100)【单调序列,】
896. Monotonic Array
题目描述:
An array is monotonic if it is either monotone increasing or monotone decreasing.
An array A is monotone increasing if for all i <= j, A[i] <= A[j]. An array A is monotone decreasing if for all i <= j, A[i] >= A[j].
Return true if and only if the given array A is monotonic.
意思很简单,判断是否单调;
举例:
Example 1:Input: [1,2,2,3]
Output: true
Example 2:Input: [6,5,4,4]
Output: true
Example 3:Input: [1,3,2]
Output: false
Example 4:Input: [1,2,4,5]
Output: true
Example 5:Input: [1,1,1]
Output: true
我的办法很笨重:
class Solution:def isMonotonic(self, A):""":type A: List[int]:rtype: bool"""if len(A)==1:return Trueelse:if A[0]<A[1]:return self.increase(A)elif A[0]>A[1]: return self.decrease(A)elif A[0]==A[1] and len(A)==2:return Trueelse:if A[1]<A[len(A)-1]:return self.increase(A)else: return self.decrease(A)def increase(self,A):index = []list_len = len(A)for i in range(list_len - 1):if A[i] <= A[i + 1]:index.append('True')else:index.append('False')if 'False' in index:return Falseelse:return Truedef decrease(self,A):index = []list_len = len(A)for i in range(list_len - 1):if A[i] >= A[i + 1]:index.append('True')else:index.append('False')if 'False' in index:return Falseelse:return Trues=Solution()
s.isMonotonic([-5,-5,-5,-5,-2,-2,-2,-1,-1,-1,0])
我的思路笨拙,但是很简单。再看看人家的:
def isMonotonic(self, A):return not {cmp(i, j) for i, j in zip(A, A[1:])} >= {1, -1}
上面用到的思想和函数:
cmp(x,y) 函数用于比较2个对象,如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1。
我滴妈………..
官方参考答案:
return (all(A[i] <= A[i+1] for i in xrange(len(A) - 1)) orall(A[i] >= A[i+1] for i in xrange(len(A) - 1)))
函数:
all() 函数用于判断给定的可迭代参数 iterable 中的所有元素是否都为 TRUE,如果是返回 True,否则返回 False。
元素除了是 0、空、FALSE 外都算 TRUE。
但是注意:
>>> all([]) # 空列表
True
>>> all(()) # 空元组
True
辣鸡刘的Leetcode之旅4 (Weekly Contest 100)【单调序列,】相关推荐
- 辣鸡刘的Leetcode之旅8【Add Binary,Sqrt(x),Merge Sorted Array】
Add Binary 题目描述; Given two binary strings, return their sum (also a binary string). The input string ...
- 超级辣鸡的编程学习之旅 之 第一篇~~
背景介绍:博主前十八年前只用过电脑看电视聊QQ,其他计算机知识一窍不通,高考后确定读计算机相关的专业之后就收藏了很多编程学习视频,but初高中时我的理科成绩一直比较差,所以对编程这类知识心存畏惧,迟迟 ...
- 一名非典型二流学生的自述 | 我是如何从菜鸟进化到辣鸡的
人们总是一边不相信鸡汤,一边又奢望鸡汤在关键时刻能够拉自己一把. 事先说明,这是一碗有毒的鸡汤,请谨慎阅读,嘻嘻嘻-- 有很多大佬都在讲述成功的故事,却很少提到在成功之前,他们所经历的苦难和迷茫,他们 ...
- 一名非典型二流大学生的自述 | 我是如何从菜鸟进化到辣鸡的
人们总是一边不相信鸡汤,一边又奢望鸡汤在关键时刻能够拉自己一把. 成功者不会把那些努力的过程一五一十说出来,因为那些东西太阴暗.太痛苦了. 我当时的苦逼程度,只有我自己最懂. Hello MoCha ...
- 辣鸡采集,采集世界上所有辣鸡数据 欢迎大家来采集
辣鸡采集 laji-collect 介绍 辣鸡采集,采集世界上所有辣鸡数据 欢迎大家来采集 基于fesiong万能采集器底层开发 万能采集器 开发语言 golang 官网案例 辣鸡采集 为什么会有这个 ...
- 二流java程序员_一名90后二流大学程序员的自述:我是如何从“菜鸟”到“辣鸡”的...
本文来自"摩卡先生"的投稿,通过文字感受一下新手程序员强烈的奋斗激情. 1.编者注 读过本文,能感受到作者作为典型90后不羁的一样,但文字内容远非作者自我调侃的那样从"菜 ...
- 一名90后二流大学程序员的自述:我是如何从“菜鸟”到“辣鸡”的
1.编者注 读过本文,能感受到作者作为典型90后不羁的一样,但文字内容远非作者自我调侃的那样从"菜鸟"到"辣鸡".此文文笔流畅.思路清晰.主次明确,作者有激情且 ...
- 里加一列为1_9月1号新宠物食品法规实施啦,辣鸡宠物食品遭殃,你也可能违法...
大家好啊,今天是2019年9月1号,对于宠物行业其实是一个非常特别的日子 今天宠物饲料管理办法正式实施 加上2019年1月1号实施的宠物饲料卫生规定以及2015年3月8号实施的全价宠物食品 犬粮,猫粮 ...
- NOIP模拟测试10「大佬·辣鸡·模板」
大佬 显然假期望 我奇思妙想出了一个式子$f[i]=f[i-1]+\sum\limits_{j=1}^{j<=m} C_{k \times j}^{k}\times w[j]$ 然后一想不对得容 ...
最新文章
- 一些通用性的haproxy调优tips
- microsoft query尚未安装的原因和方法
- internship research notes
- 1099 字串变换 2002年NOIP全国联赛提高组
- C语言 realloc函数 带着内存游走的函数
- jzoj4226-A【图论】
- ElasticSearch 聚合查询
- FreeBSD与Linux的比较
- 维基解密曝CIA 入侵苹果、安卓机、电视,快来围观8761份泄密文
- 手绘流程图讲解spark是如何实现集群的高可用
- jq 中each的用法 (share)
- 解读设计模式----迭代器模式(Iterator Pattern),谁才是迭代高手
- 麻省理工-机器学习导论
- 斐讯K2 E1 刷老毛子Padavan中继图文教程(与主路由同网段)
- VM虚拟机上的网络设置
- python计算md5码
- photoshop-photoshop记录
- 二、JavaScript 基础(上) - 章节课后练习题及答案
- VMWare虚拟机无法开启,显示模块“Disk”启动失败
- 数据处理与可视化软件Tableau、Qlikview、Power BI 全方位比较