2020 상탕 8월 19일 필기시험 문제 2 최대 증가 서열과 최대 감소 서열
1519 단어 필기 시험 문제를 교정하다.
:
N
N
:
방법: 동적 기획 사고방식: 두 부분으로 전환된 1차원 동적 기획(1) 왼쪽이 연속적으로 상승한다. 만약에 오른쪽의 수>왼쪽의 수가 있으면left오른쪽=left왼쪽+1;(2) 오른쪽 연속 하락: 왼쪽 수 > 오른쪽 수가 있으면 라이트 왼쪽 = 라이트 오른쪽 +1;만약에 만족하지 않으면 각 지역에서 1로 초기화하고 max를 정의하여 그룹을 훑어보고 right+left의 가장 큰 하표를 구한다. 마지막에 산봉우리가 두 번 계산했기 때문에 하나를 빼야 한다. 만약에 마지막에 max가 >=3 & 이 점의 left와 right가 동시에 >=2가 없으면 산봉우리를 구성할 수 없다.
코드:
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] nums = new int[n];
for (int i = 0; i array[i-1]){
left[i]=left[i-1]+1;
}else{
left[i]=1;
}
}
//
right[array.length-1]=1;
for (int i = array.length-2; i>=0 ; i--) {
if(array[i]>array[i+1]){
right[i]=right[i+1]+1;
}else{
right[i]=1;
}
}
int max=0,j;
for (int i = 0; i =4&&right[j]>=2&&left[j]>=2){
return max-1;
}
return 0;
}