[Programmers] #120924 - 다음에 올 숫자 [Java][C++][Python]
[Programmers] #120924 - 다음에 올 숫자 [Java][C++][Python]
1. 아이디어
common은 등차수열 혹은 등비수열이므로 연속된 세 항에 대해 인접한 두 항의 차가 일정하면 등차수열, 아니면 등비수열로 조건 분기를 했다.
2. 복잡도
| 접근 | 시간 | 공간 |
|---|---|---|
| 풀이 | $O(1)$ | $O(1)$ |
3. 코드
풀이 [Java][C++][Python]
1
2
3
4
5
6
7
8
9
class Solution {
public int solution(int[] common) {
if (common[0] - common[1] == common[1] - common[2]) {
return common[common.length - 1] + common[1] - common[0];
} else {
return common[common.length - 1] * common[1] / common[0];
}
}
}
1
2
3
4
5
6
7
8
9
10
#include <bits/stdc++.h>
using namespace std;
int solution(vector<int> common) {
if (common[0] - common[1] == common[1] - common[2]) {
return common.back() + common[1] - common[0];
} else {
return common.back() * common[1] / common[0];
}
}
1
2
3
4
5
def solution(common):
if common[0] - common[1] == common[1] - common[2]:
return common[-1] + common[1] - common[0]
else:
return common[-1] * common[1] // common[0]
This post is licensed under CC BY 4.0 by the author.