https://www.acmicpc.net/problem/14659
이중반복문을 이용한다.
첫번째 for문에서는 비교하려는 배열의 값을 저장하고 이를 기준으로 잡는다. (now_hanzo
)또한cnt
를 0으로 초기화한다.
두번째 for문에서는 기준값보다 작으면cnt++
, 큰 값이 나오는 경우는 반복문을 탈출한 뒤
최대값인지 비교한다.
#include <iostream>
#include <vector>
// 브론즈 1
using namespace std;
int main(){
int N, temp, result = 0;
cin >> N;
vector<int> hanzo;
for (int i=0; i<N; i++){
cin >> temp;
hanzo.push_back(temp);
}
int now_hanzo, cnt; // 현재 활잡이, 처치한 적의 수
for(int i=0; i<N; i++){
now_hanzo = hanzo[i];
cnt = 0;
for (int j=i+1; j<N; j++){
if (now_hanzo < hanzo[j])// 높은 봉우리를 만났을 경우
break;
else
cnt++;
}
result = max(result, cnt);
}
cout << result << '\n';
return 0;
}
이중 반복문 안써보려 했는데. . 실패!