https://codingcompetitions.withgoogle.com/kickstart/round/000000000019ff08?scoreboard_type=China
A.当前数比前面所有和后面一个都大的时候,算做破纪录一次。遍历一遍。
#include <bits/stdc++.h> using namespace std; vector<int> visiter(1000005,0); int main() { int T,N; int currmax=-1; int res=0; cin>>T; for(int i=0;i<T;i++){ currmax=-1; res=0; cin>>N; for(int j=0;j<N;j++){ cin>>visiter[j]; } cout<<"Case #"<<i+1<<": "; if(N==1){ cout<<1; }else{ for(int j=0;j<N-1;j++){ if(visiter[j]>currmax && visiter[j]>visiter[j+1]){ res++; } currmax=max(currmax,visiter[j]); } if(visiter[N-1]>currmax) res++; cout<<res; } cout<<endl; } return 0; }