※ 본 풀이는 정답이 아니며 공부용 기록입니다.

 문제

등차수열 혹은 등비수열 common이 매개변수로 주어질 때, 마지막 원소 다음으로 올 숫자를 return 하도록 solution 함수를 완성해보세요.


제한사항

  • 2 < common의 길이 < 1,000
  • -1,000 < common의 원소 < 2,000
  • 등차수열 혹은 등비수열이 아닌 경우는 없습니다.
  • 공비가 0인 경우는 없습니다.

 풀이

class Solution {
    public int solution(int[] common) {
        int answer = 0;
        int temp = 0;
        // 1번째 인덱스를 0번째 인덱스로 뺀 값과 
        // 2번째 인덱스를 1번째 인덱스로 뺀 값이 같을 경우 - 등차수열
        if(common[1]-common[0] == common[2]-common[1]){
            temp = common[1]-common[0];
            answer = common[common.length-1] + temp;
        }
        // 1번째 인덱스로 0번째 인덱스를 / 한 값과 
        // 2번째 인덱스를 1번째 인덱스로 / 한 값이 같으면 등비수열
        else if(common[1]/common[0] == common[2]/common[1] && common[0]>0){
            temp = common[2]/common[1];
            answer = common[common.length-1] * temp;
        }
        else if(common[1]/common[0] == common[2]/common[1] && common[0]<0){
            temp = common[2]/common[1];
            answer = common[common.length-1] * temp;
        }
        return answer;
    }
}

+ Recent posts