蓝桥杯 再创新高【省模拟赛】
问题描述
小蓝有一个数组 a[1],a[2],…,a[n]a[1],a[2],…,a[n],一个“再创新高”的位置是指一个位置 pp,使得 a[p]a[p] 的值比之前每个位置的值都大。
请求出小蓝的数组中有多少个再创新高的位置。
输入格式
输入的第一行包含一个整数 nn。
第二行包含 nn 个整数,相邻数之间使用一个空格分隔,依次表示 a[1],a[2],…,a[n]a[1],a[2],…,a[n]。
输出格式
输出一行,包含一个整数,表示答案。
样例输入
8 1 2 3 4 5 6 6 6
样例输出
6
样例输入
9 3 2 1 6 5 4 9 8 7
样例输出
3
评测用例规模与约定
对于 30% 的评测用例,1≤n≤1001≤n≤100,0≤a[i]≤10000≤a[i]≤1000。
对于 60% 的评测用例,1≤n≤10001≤n≤1000,0≤a[i]≤10000≤a[i]≤1000。
对于所有评测用例,1≤n≤100001≤n≤10000,0≤a[i]≤10000000≤a[i]≤1000000。
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
int cnt = 0, max_val = INT_MIN;
for(int i=0; i<n; i++){
int cur;
cin>>cur;
if(cur > max_val){
max_val = cur;
++cnt;
}
}
cout<<cnt;
return 0;
}