코딩테스트
코테 Lv0 - 다음에 올 숫자
Beekei
2024. 11. 9. 02:04
반응형
문제 설명
등차수열 혹은 등비수열 common이 매개변수로 주어질 때, 마지막 원소 다음으로 올 숫자를 return 하도록 solution 함수를 완성해 보세요.
더보기
더보기
등차수열
1,3,5,7,9,⋯처럼 연속한 두 항의 차가 일정한 수열을 등차수열이라고 한다.
연속한 두 항에서, 뒤 항에서 앞 항을 뺀 값을 공차(common difference)라고 한다.
등비수열
3,6,12,24,48,⋯처럼 연속한 두 항의 비가 일정한 수열을 등비수열이라고 하며, 아래에서 살펴볼 기하적 증가 양상 때문에 기하수열이라고도 한다.
여기에서 연속한 두 항의 비를 공비(common ratio)라고 한다.
제한사항
- 2 < common의 길이 < 1,000
- -1,000 < common의 원소 < 2,000
- common의 원소는 모두 정수입니다.
- 등차수열 혹은 등비수열이 아닌 경우는 없습니다.
- 등비수열인 경우 공비는 0이 아닌 정수입니다.
입출력 예
입출력 예 #1
Input : [1, 2, 3, 4] / Output : 5
입출력 예 #2
Input : [2, 4, 8] / Output : 16
입출력 예 #3
Input : [-1, 2, -4] / Output : 8
제출코드
- 제한사항에 common의 길이는 2보다 크니까 원소는 최소 3개입니다.
- 첫 번째, 두 번째, 세 번째 원소의 각 차이를 구하고 차이가 같다면 등차수열, 같지 않다면 등비수열이라고 판단했습니다.
- 마지막 원소값에 등차수열이라면 차이값을 더해주고 등비수열이라면 나눈 값을 곱해주어 반환하였습니다.
class Solution {
public int solution(int[] common) {
int first = common[0];
int second = common[1];
int third = common[2];
int diff1 = second - first;
int diff2 = third - second;
if (diff1 == diff2) {
return common[common.length - 1] + diff1;
} else {
return common[common.length - 1] * second / first;
}
}
}
출처 : https://school.programmers.co.kr/learn/courses/30/lessons/120924
반응형