加载中...

浙江理工大学入队200题——17H

问题 H: 零基础学C/C++187——美丽的黄山

题目描述

众所周知,黄山市一片山(而不是一座山)。假设这些山排成了一排,每座山有各自的高度。现在游客们从最左边看山,有些山因为高度没有它左边的某座山高,就会被遮住,游客们就无法看到。现在请告诉游客,他能看到几座山(看到山顶即可被认为看到了,如果恰好山顶被遮住了,这座山也不算被看到)

输入

第1行1个正整数n,表示有N座山
第2行N个正整数,依次表示从左到右每座山的高度,每2个数之间用一个空格隔开

输出

一行一个正整数,表示从左端看,能看到多少座山

样例输入 Copy

5
3 7 7 2 8

样例输出 Copy

3

题解

有点想不明白为啥通过比率才758/1720,有人问我就写了。
就是求从左边开始的最长升序自序列的元素个数
3 7 8

代码(AC)

点击查看代码
#include<stdio.h>
#include<iostream>
using namespace std;
int main()
{
  int i,n;
  cin>>n;
  int a[n];//这不是一个好习惯-(>口<-),只是方便你看懂
  for(i=0;i<n;i++)
  {
	cin>>a[i];
  }
  int max=a[0];
  int count=1;
  for(i=1;i<n;i++)
  {
	if(a[i]>max)
        {
		max=a[i];
		count++;
	}
  }
  printf("%d",count);
return 0;
}

posted @ 2022-10-30 11:46  shany212  阅读(86)  评论(0编辑  收藏  举报