(C++)判断一个序列是non-increasing/non-decreasing还是两者都不的两个方法
思路:根据前两个值预设类型,再遍历后面的pair,看是否推翻预设
int judgeType(vector<int> vi){//-1 递减 0 啥也不是 1 递增 if(vi.size()==1)return 0;//根据前两个元素的大小设置初始类型int type;if(vi[1]>=vi[0])type = 1;else type = -1;if(vi.size()==2)return type;for(int i=2;i<vi.size();i++){if(vi[i]>vi[i-1]&&type==-1)return 0;if(vi[i]<vi[i-1]&&type==1)return 0;}return type;
}
注:啥也不是主要是指,既有上升又有下降
优化版:
思路:设置两个变量先假设non-increasing/non-decreasing都成立,然后遍历序列,判断每一个元素和上一个的关系,看是否会被否定掉
int judgeType(vector<int> vi){//-1 递减 0 啥也不是 1 递增 if(vi.size()==1)return 0;bool isNonIn = true,isNonDe = true;for(int i=1;i<vi.size()-1;i++){if(vi[i]>vi[i-1])isNonIn = false;if(vi[i]<vi[i-1])isNonDe = false;} if(isNonIn)return -1;else{if(isNonDe)return 1;else return 0;}
}
相关文章:

java 下载文件功能代码例子
public static void down(HttpServletRequest request, HttpServletResponse response) throws Exception { String name"aaa.*";//文件名 String uploadPath UploadFileHelper.getRepositoryPath()"//";//文件来源 String filePath…

不要小看字符串
字符串非常非常常见又重要,而且还有那么多名堂在里面 字符串: 在标准C中,是没有字符串变量的,但是有字符数组。而且标准C带有的标准库函数:string.h中包含了大量的字符串操作函数,当然如果必要的话,你也可以…

零基础学习Python需要注意的几个点,Python培训机构排名
俗话说的好万事开头难,不管你做任何事情,开头的确很较难的,学Python编程也是如此,因此刚开始学Python编程的同学们,就要多借鉴过来人的经验,少走弯路,本文小编就为大家分享几个Python编程小白初…

PAT(甲级)2018年冬季考试 7-4 Heap Paths(非递归与递归解法)
非递归解法 1. 前置知识:完全二叉树的属性 1.1 从1开始存储,子节点的下标除以二得到的是父节点的下标 1.2 数组的存放顺序刚好是层序遍历顺序 1.3 从1开始存储,节点的下标i和结点总数n如果满足 i*2>n说明该结点是叶子结点 2. 思路&am…

Request Connection: Remote Server @ 192.229.145.200:80
录制Loadrunner脚本时,提示:Request Connection: Remote Server 192.229.145.200:80 NOT INTERCEPTED!(REASON: User requested to IGNORE connection);解决方法:1. 打开IE里的Internet选项,单击连接选项卡。单击最…

抽象工厂与工厂模式例子
NativeFactory。java package com;//定义 人有杀日本人 和 杀美国人两个方法interface NativePerson{ public void killAmeria(); public void killJapan();}//中国人实现了人的接口 class NativeChinese implements NativePerson{ //中国人杀美国人 public void killAmeria() …

《疯狂Java讲义》学习笔记(十)异常处理
2019独角兽企业重金招聘Python工程师标准>>> 0、Java的异常体系 1、异常概述 异常机制已经成为判断一门编程语言是否成熟的标准,目前主流的编程语言都提供了成熟的异常机制,增加了异常处理机制后的程序有更好的容错性,更加健壮 Ja…

PAT(甲级)2018年冬季考试 7-1 Google Recruitment
1. 本题是 substrsscanf的绝佳实践。 2. 判断素数使用i*i<n与i<(int)sqrt(0.1*x)的区别是前者可能再n接近10的9次方时溢出,但本题不会。 3. 尽管把字符串转变成了整数,但输出时仍旧输出字符串,如果选择打印整数,会遇到%0K…

MySQL 的“root”用户修改密码
MySQL 的“root”用户默认状态是没有密码的,所以在 PHP 中您可以使用 mysql_connect("localhost","root","") 来连接 MySQL 服务器;如果您想为 MySQL 中的“root”用户设置密码,请在控制台中使用“mysqladmin”…

游戏AI之初步介绍(0)
目录 游戏AI是什么?游戏AI和理论AI智能的假象(更新)游戏AI和机器学习介绍一些游戏AI4X游戏AI《求生之路》系列角色扮演/沙盒游戏中的NPC游戏AI 需要学些什么?自治智能体群体智能感知状态机(重要)行为树&…

Google Adsense实用防踢技巧总结
我们都知道,对个人草根站长来说,Google AdSense是网站收入的主要来源之一,我在这里介绍一些常用的技巧。 希望通过这些技巧能够增加大家的Google AdSense收入,并防止自己的帐号被删除。大家喜欢的话就顶下吧! 广告的位…

PAT(甲级)2018年冬季考试 7-3 Vertex Coloring
1. 起先我的思路是,对于每一种方案,把相同颜色的下标放到一个集合,对于每一个集合判断里面的元素互相之间是否有着邻接关系。有一个用例超时,20/25。 2. 转变思路,对于每一种方案,遍历邻接关系,…
蚂蚁金服×西安银行 | 西安银行手机银行App的智能升级之路
小蚂蚁说:当前,数字化信号已经逐渐深入到社会的每个角落,影响着用户的心智和行为,来到数字化时代门口的银行,需要注意到数字化信号。西安银行通过引入蚂蚁金服移动开发平台mPaaS,对手机银行进行架构升级&am…

(四十七)Quartz2D引擎初步
Quartz2D是跨平台的,同时支持iOS与Mac。 支持圆型裁剪,可以实现圆形头像等功能,也支持手势解锁、折线图等的制作。 对于复杂的UI界面,还可以通过Quartz2D将控件内部的结构画出来,可用于自定义控件。 实际上iOS大部分控…

PAT(甲级)2018年冬季考试 7-2 Decode Registration Card of PAT
目录 体会 代码(非满分) 改进 AC代码 体会 这题主要是考察对STL中string,map,vector的应用以及自定义sort()应用。 类型1和2的处理很容易。 类型3要求对于指定date,按照每个考场进行分类,记录不同考场的人数,按照人数非升序ÿ…

DOS、Mac 和 Unix 文件格式+ UltraEdit使用
文件格式 区分DOS、Mac 和 Unix分别对应三种系统从文件编码的方式来看,文件可分为ASCII码文件和二进制码文件两种文件模式 区分ASCII模式和Binary模式 通常由系统决定,大多数Linux/UNIX系统只有两种模式:文本模式和二进制模式。文本传输器使用…

灰度图像--图像分割 Scharr算子
学习DIP第46天 转载请标明本文出处:http://blog.csdn.net/tonyshengtan ,出于尊重文章作者的劳动,转载请标明出处!文章代码已托管,欢迎共同开发: https://github.com/Tony-Tan/DIPpro 更多图像处理机器学习…

FileUpload生成图片水印,文字水印(转载)
/** <summary>/// 生成缩略图/// </summary>/// <param name"originalImagePath">源图路径(物理路径)</param>/// <param name"thumbnailPath">缩略图路径(物理路径)</para…

1151 LCA in a Binary Tree (含求LCA的通法)
目录 解法一思路 结果 解法一改进 解法一改进结果 解法二思路 解法一代码 解法一改进代码 解法二代码(AC) 解法一思路 1. 根据先序和中序建树 2. 对树进行深度优先遍历,找到每一个结点的父节点(注意:由于值的范围是int,直接用可…

cf 414B Mashmokh and ACM 动态规划
题目链接:http://codeforces.com/problemset/problem/414/B dp[i][j]表示长度为i、最后一个数字为j的合法序列总数 dp[1][1...2000]都是1 后面用dp[i-1][j] 去更新 dp[i][j*t] (1 < j*t < 2000) 即用因子去更新它的倍数 表面上看是2000^3的复杂度会爆 其实不用…

解决:angularjs radio默认选中失效问题
添加ng-model后checked"checked"失效,可见angularjs也不好,会失效html标准属性解决:添加ng-checked"1"<input type"radio" ng-model"sel_course" value"1" ng-checked"1" /…

在ireport报错 报 jdk5找不到的解决办法
在ireport安装目录下, etc目录下有ireport.conf, 其中有jkdhome设置, 把前面的#(注释)去掉, 换成自己的jdk目录就行 双引号不要去掉 jdk地址放在双引号之间 比如 改成 jdkhome"G:/ACD/jdk1.5.0&quo…

如何通过中序和层序序列建立二叉树
有这样一棵二叉树 根据节点个数 9 层序遍历结果 15 23 8 16 2 32 28 7 11 中序遍历结果 16 23 7 32 11 2 28 15 8 预期先序输出 15 23 16 2 32 7 11 28 8 运行结果 这个过程和建立二叉查找树(BST)的过程是非常相像的,将laSq[laIndex]插入到根为root的子树中&a…

BZOJ 3573 米特运输
Description 米特是D星球上一种非常神秘的物质,蕴含着巨大的能量。在以米特为主要能源的D星上,这种米特能源的运输和储存一直是一个大问题。 D星上有N个城市,我们将其顺序编号为1到N,1号城市为首都。这N个城市由N-1条单向高速通…

[学习笔记]最小割之最小点权覆盖最大点权独立集
最小点权覆盖 给出一个二分图,每个点有一个非负点权要求选出一些点构成一个覆盖,问点权最小是多少 建模: S到左部点,容量为点权 右部点到T,容量为点权 左部点到右部点的边,容量inf 求最小割即可。 证明&…

10分钟学会Google Map API
http://space.itpub.net/14734354/viewspace-374828 前几天玩了玩Google的Map API,感觉还不错,很简单。但凡有过任何编程经验的同学,看完以下的教程,都可以在10分钟内掌握它的主要功能。另外我还做了个简单的小例子,有…

1143 Lowest Common Ancestor(建树与不建两种思路)
目录 解法一 解法二 解法一 这题可以不建树,直接利用BST的性质:左子树<根节点<右子树,对先序序列进行遍历,如果有某个元素大于等于u,v中较小的且小于等于u,v中较大的,则可能是根节点。 这题数据弱࿰…

UIScrollView
UIScrollView(包括它的子类 UITableView 和 UICollectionView)是 iOS 开发中最常用也是最有意思的 UI 组件,大部分 App 的核心界面都是基于三者之一或三者的组合实现。UIScrollView 是 UIKit 中为数不多能响应滑动手势的 view,相比…

MySQL练习题:常用函数
1. 以首字母大写,其他字母小写的方式显示所有员工的姓名2. 将员工的职位用小写字母显示3. 显示员工姓名超过5个字符的员工名4. 用#来填充员工职位job的结尾处,按10个字符长度输出。5. 去除字符串 hello world 两边的空格,并将单词间的空格改…

我的WINCE4.2历程(10)
2010-04-02 今天的主要工作: 1)RTC4513驱动调试,又做了一些尝试(检查GPIO口的第二功能设置是否正常),结果还是不正常,FAINT。 2)回顾了截止到目前取得的进展: aÿ…