728x90
반응형
주어진 정수 배열에서 인접한 두 요소 간의 최대 절대 차이를 찾는 문제입니다. 즉, 배열에서 연이은 두 요소를 선택하여 그 차이의 절대값이 최대가 되는 경우를 찾아야 합니다.
int solution(int[] inputArray) {
int max = 0;
for(int i = 1;i<inputArray.Length-1;i++){
if(Math.Abs(inputArray[i-1]-inputArray[i]) > max){
max = Math.Abs(inputArray[i-1]-inputArray[i]);
}
if(Math.Abs(inputArray[i+1]-inputArray[i]) > max){
max = Math.Abs(inputArray[i+1]-inputArray[i]);
}
}
return max;
}
max 변수를 초기화합니다. 이 변수는 현재까지 찾은 최대 절대 차이를 저장합니다.
배열을 인덱스 1부터 시작하여 끝에서 두 번째 요소까지 반복합니다.
각 반복에서 현재 요소와 그 이전 요소 간의 차이(Math.Abs(inputArray[i-1]-inputArray[i]))를 계산하고, 이 차이가 현재까지의 최대 차이보다 크면 max 값을 업데이트합니다.
동시에 현재 요소와 그 다음 요소 간의 차이(Math.Abs(inputArray[i+1]-inputArray[i]))를 계산하고, 이 차이가 현재까지의 최대 차이보다 크면 max 값을 업데이트합니다.
반복이 끝나면 최대 차이인 max 값을 반환합니다.
728x90
반응형
'CodeSignal' 카테고리의 다른 글
Box Blur (0) | 2023.12.12 |
---|---|
avoidObstacles (0) | 2023.12.12 |
isIPv4Address (0) | 2023.12.10 |
areEquallyStrong (1) | 2023.12.10 |
palindromeRearranging (2) | 2023.12.10 |