开心猫序列 C语言 函数
猫啊,活着最重要的就是开心啊!噗噗猫天天看着开心猫龇牙咧嘴得笑,决定给它构造一个开心序列,开心序列定义:序列a由n个正整数构成;
最开始序列的元素先是严格递增;
接着元素开始相同;
再接着元素开始严格递减。
注意第一部分和第三部分可以不存在。
举个例子,{1,2,3,3,2,1},{4,2},{3},{1,2}都是开心序列。
输入
第一行输入一个正整数n(1<=n<=100)为序列的个数;
第二行输入n个正整数a1, a2, …, an (1 ≤ ai ≤ 1 000),ai代表第i个元素的值。
输入结束标志为文件结束符(EOF)。
输出
如果输入序列是开心序列,那么输出“YES”,否则输出“NO”。
样例输入
3
1 2 3
4
1 2 1 3
样例输出
YES
NO
碎碎念念
写三个函数,分别判断递增、不变和递减。
代码
#include<stdio.h>
int a[100],n;
int descent(int m)
{int i;for(i=m;i<n-1;i++){if(a[i]<a[i+1]||a[i]==a[i+1])return 0;}return 1;
}
int equal(int m)
{int i;for(i=m;i<n-1;i++){if(a[i]<a[i+1]){return 0;}else if(a[i]>a[i+1]){return descent(i);}}return 1;
}
int plus()
{int i;for(i=0;i<n-1;i++){if(a[i]==a[i+1]){return equal(i);}else if(a[i]>a[i+1]){return descent(i);}}return 1;
}
int main()
{int i;while(scanf("%d",&n)!=EOF){for(i=0;i<n;i++)scanf("%d",&a[i]);if(plus()==1)printf("yes\n");elseprintf("no\n");}
}
开心猫序列 C语言 函数相关推荐
- 开心猫序列C语言,开心猫的读后感作文
开心猫的读后感作文 寒假,我读了一本书--<开心猫>.这本冰心奖书系的书,里面一篇篇包含深刻道理的美文,让我感受颇深.不过,这本书中给我印象最深刻的,还是<开心猫>这篇文章. ...
- R语言函数:length计算长度、seq生成数据序列、rep将数据对象重复N遍复制、cut将连续变量分割为多水平的因子变量、pretty将连续变量x分成n个区间创建合适的断点、cat数据对象拼接
R语言函数:length函数计算数据对象的长度.seq函数生成数据序列(sequenceÿ
- R语言使用seq函数生成数据序列、seq函数在指定范围内生成固定长度的序列、指定数据序列的第一个数值、最后一个数值以及另外一个数据序列(along.with)
R语言使用seq函数生成数据序列.seq函数在指定范围内生成固定长度的序列.指定数据序列的第一个数值.最后一个数值以及另外一个数据序列(along.with) 目录
- 在c语言中怎么返回引用参数,C语言函数 函数的声明 C语言的头文件 #include的用法 形参和实参 函数的返回值 - 猫扑天空...
C语言函数 一.是什么? 是指编程中对一块功能代码的封装,可以理解一个程序片段 二.有什么用? 可以封装代码,方便调用,提高复用性 三.怎么用? 定义: 返回值类型 函数名(形参类型 参数名1-. ...
- c#调用c语言的自定义函数,[转]在C#中调用C语言函数(静态调用Native DLL,Windows Microsoft.Net平台)...
对于不太了解.Net的人,如果想要了解.Net,我必须给他介绍P/Invoke.P/Invoke是什么呢?简单地说,就是在.Net中调用本地代码(Native code)的一种解决方案.所谓" ...
- C语言 —— 函数(一)
C语言函数 一.C语言函数概念与定义方式 1.1.C语言的函数概念 1.2.函数定义的方式 1.2.1 .C语言无参函数的定义 1.2.2.C语言有参函数的定义 1.2.3.**!!!** 注意:C语 ...
- 关于C语言函数的简单理解
关于C语言函数的简单理解 C语言中的函数 在C语言中,函数是构成程序的基本模块.程序的执行从main()函数的入口开始,到main()函数的出口结束,中间循环.往复.迭代的调用一个有一个函数.每个函数 ...
- c语言 重新输入,C语言函数重新输入
C语言函数重新输入 由于使用了不受保护的系统资源(例如全局变量区,中断向量表),因此除非确保相互排斥(使用信号灯/代码的关键部分禁止中断),否则无法在多任务环境中运行等 重入函数: 没有静态数据结构不 ...
- C语言函数大全-- m 开头的函数(1)
C语言函数大全 本篇介绍C语言函数大全-- m 开头的函数 1. malloc 1.1 函数说明 函数声明 函数功能 void *malloc(size_t size); 用于动态分配内存 参数: s ...
最新文章
- docker ps 只显示容器名称 显示列名
- 【03-14】日常资源访问备份
- IDEA创建Servlet项目
- OGRE 1.7.2 [Cthugha] 编译配置全过程方法
- JDBC数据库查询操作
- 《算法》C++代码 前言
- 【剑指offer】面试题09:用两个栈实现队列(Java)
- JQuery动态循环绑定事件
- 【mybatis】时间范围 处理时间格式问题
- ASP.NET MVC HandleErrorAttribute 和 远程链接
- 黑马程序员机器学习Day1学习笔记
- Struts2(Maven),小白版
- macOS Sierra,Xcode 8配置openCV3
- 企业信息与网络通信安全 团队成员简历-叶俊
- 微信小程序Unhandled promise rejection TypeError
- 人工智能是当前最好的计算机研究方向吗?
- 石油远程《机械设计》第一次在线作业
- 台媒曝大S女儿小名格格吉祥 汪小菲否认
- JVM垃圾回收说为学日益,为道日损
- 【算法笔记】二叉树之基础遍历