[프로그래머스] 다음에 올 숫자 / Level 0 / Java

알재·2023년 3월 28일
0

코딩 테스트

목록 보기
1/39

링크

문제링크

문제

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

제한사항

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

입출력

commonresult
[1,2,3,4]5
[2,4,8]16

해결

등차수열인지 등비수열인지 알기위해 common[1] - common[0] 과 common[2] - common[1] 을 비교한다.
같다면 등차수열 다르다면 등비수열이다.
common의 가장 마지막 항에서 구한 d를 가지고 계산한다.

코드

class Solution {
    public int solution(int[] common) {
        int answer = 0;
        
        int d = common[1] - common[0];

        if(d != common[2] - common[1]){
            d = common[1] / common[0];
            answer = common[common.length - 1] * d;
        }
        else {
            answer = common[common.length - 1] + d;
        }
        
        return answer;
    }
}
profile
저장소

0개의 댓글