如果数组满足以下三个条件,则这个数组是有趣的:

它刚开始是严格递增的
之后是不变的
再之后它是严格递减的
但除了第二个条件,其他两个条件(递增和递减)不存在的数组也可以是有趣的。

例如,以下三个数组是有趣的: [5, 7, 11, 11, 2, 1], [4, 4, 2], [7], 但以下三个却不是有趣的: [5, 5, 6, 6, 1], [1, 2, 1, 2], [4, 5, 5, 6].

请您编写一个程序判断一个数组是否有趣

Input
第一行是一个整数 n (1 ≤ n ≤ 100) —数组内元素的个数

第二行包括n 个整数 a1, a2, …, an (1 ≤ ai ≤ 1 000) — 数组的元素

Output
如果这个数组是有趣的,请输出”YES” 否则请输出 “NO”.

Examples
输入
6
1 5 5 5 4 2
输出
YES
输入
5
10 20 30 20 10
输出
YES
输入
4
1 2 1 2
输出
NO
输入
7
3 3 3 3 3 3 3
输出
YES
分析:例子给的很详细 几乎是所有的情况
AC代码:

//fighting!!!
#include <stdio.h>
int main()
{int n,a[10000],i;while(scanf("%d",&n)!=EOF){for(i=0;i<n;i++)scanf("%d",&a[i]);int max=0,t,flag=0;for(i=0;i<n;i++){if(a[i]>max){t=i;max=a[i];}}//找到最大的那个元素 当为平序时 此时t=0 不进入下面那个for循环 for(i=0;i<t;i++)//在找到峰值以前 判断前面是否升序排列 {if(a[i]<a[i+1])continue;else{flag=1;break;}} if(flag==1)//升序不满足 输出no printf("NO\n");else{int c=0;//另外一个标记位  后两段会出现平稳或下降//当c==0时 说明一直平稳 当c不等于0时结束平稳状态for(int i=t;i<n-1;i++){if(c==0){if(max==a[i+1])continue;else if(a[i+1]<a[i]){c=1;//标记为1 出现不平衡 continue;}else{//不能出现升序情况 出现就不满足flag=1;break;  }}else{//平稳结束 判断降序情况if(a[i+1]<a[i]){continue;}else{flag=1;break;}    }}if(flag==1)printf("NO\n");elseprintf("YES\n"); }   }return 0;
}

Unimodal Array相关推荐

  1. Codeforces Round #424 (Div. 2, rated, based on VK Cup Finals)

    昨晚的没来得及打,最近错过好几场CF了,这场应该不算太难 A. Unimodal Array time limit per test 1 second memory limit per test 25 ...

  2. Codeforces Round #424 (Div. 2)

    D题fst了,生无可恋.第二场rated的CF,打得精神恍惚 A. Unimodal Array 题意:判断数列是否是单峰的. 像题意那样分为三个阶段随便判一判就好了 #include<iost ...

  3. Codeforces 题目合集+分类+代码 【Updating...】【361 in total】

    961A - Tetris                                                模拟                                      ...

  4. 老男孩上海校区Python面试题

    python面试题 第一章:python基础 数据类型: 1 字典: 1.1 现有字典 dict={'a':24,'g':52,'i':12,'k':33}请按字典中的 value 值进行排序? 1. ...

  5. CF831A-Unimodal Array(单峰阵列)

    A.单峰阵列 Array of integers is unimodal, if: it is strictly increasing in the beginning; after that it ...

  6. php recordarray,Array 数组 - [ php中文手册 ] - 在线原生手册 - php中文网

    用户评论: [#1] florenxe [2015-10-07 18:53:45] //a nice little way to print leap years using array for ($ ...

  7. NumPy — 创建全零、全1、空、arange 数组,array 对象类型,astype 转换数据类型,数组和标量以及数组之间的运算,NumPy 数组共享内存

    NumPy 简介 一个用 python 实现的科学计算包.包括: 1.一个强大的 N 维数组对象 Array : 2.比较成熟的(广播)函数库: 3.用于整合 C/C++ 和 Fortran 代码的工 ...

  8. array.array python yhzf

    关于array: Python 本身没有数组这个说法, 有的就是list和tuple, list就具有其他语言中的数组特性. 至于list和tuple的区别,在于list可以在运行时修改内容和大小,t ...

  9. [JS]请给Array本地对象增加一个原型方法,它用于删除数组条目中重复的条目(可能有多个),返回值是一个包含被删除的重复条目的新数组。

    请给Array本地对象增加一个原型方法,它用于删除数组条目中重复的条目(可能有多个),返回值是一个包含被删除的重复条目的新数组. 刚开始复习js题还不太习惯 CSDN上看了一个帖子,说是牛客上的标答, ...

  10. hnswlib RuntimeError: Cannot return the results in a contigious 2D array. Probably ef or M is to sma

    1. 问题现象 index = hnswlib.Index(space = '100', dim = 512) index.init_index(max_elements = 100, ef_cons ...

最新文章

  1. VS2010正式版MSDN下载
  2. 假期快乐!超强面试资源等你Pick,先收藏!
  3. 《SQL Server 2012 T-SQL基础》读书笔记 - 1.背景
  4. Install KVM Hypervisor on arrch64 Linux Server
  5. shell脚本编程规范与变量
  6. 初中学历做开发,3年在北京买了房,超过了99%的程序员!
  7. 《控制论导论》读书:机构-黑箱
  8. 聊聊学习型组织的五项修炼(下)
  9. jpg/png格式的图片转换成eps格式
  10. 2021-04-30
  11. Onlyoffice安装步骤
  12. 波士顿法律第一至五季/全集Boston Legal迅雷下载
  13. 学习笔记——FPGA芯片主要资源介绍
  14. Make it Divisible by 25
  15. UART总线协议——esp32学习笔记
  16. python在大数据分析中的应用
  17. Linux 修改只读文件
  18. 制作U盘启动CDLinux
  19. .Net Core跨平台 图片验证码
  20. 一位上海女生所经历过的N次感情,对80 90后的朋友具有深刻的教育意义。如果你真的看懂了,那么表示你可以真正开始谈恋爱了...

热门文章

  1. H5页面调用扫一扫功能
  2. 2021-2027中国家具门立柱市场现状及未来发展趋势
  3. Excel 实现 平均数±标准差
  4. MySQL日期计算函数
  5. 《国富论》阅读笔记05
  6. 安装pytorch详细教程
  7. linux系统双显卡切换显卡驱动,Ubuntu 14.04 安装 Nvidia 私有驱动并进行双显卡切换...
  8. java web 精仿微博_【Java】盘点 Github 上的高仿 app 项目,B站 微博 微信等等
  9. macmini更换硬盘重装系统后安装win10双系统
  10. linux查看进程命令wwn,在Linux下查看WWN、WWPN方法