728x90
반응형
안녕하세요 놀이방 사장입니다.
이번 포스팅은
프로그래머스 Lv2 문제
피보나치 수 입니다.
위에 빨간색으로 표시한 부분이 피보나치 로직입니다.
재귀함수나 반복문으로 구현할 수 있습니다.
저는 반복문으로 구현했습니다.
재귀함수로 구현하면 시간초과가 날 거 같아서 for문으로 했는데 7~14번에서 자꾸 오류가 나더라구요
그래서 뭔가.. 범위를 넘어가는 거 같아서 long형으로 바꿨는데도 오류가 나더라구요
long형의 범위를 넘어가는 거 같더라구요
여기서 문제점은
이걸 해결하기 위해서는 계산하는 과정에서 나머지를 나눠줘야합니다.
그래서 정답처리된 코드가
class Solution {
public int solution(int n) {
int answer = 0;
int n1 = 0;
int n2 = 1;
int n3 = 0;
for(int i=2; i<n+1; i++){
n3 = (n1 + n2)%1234567;
n1 = n2;
n2 = n3;
}
return answer = n3%1234567;
}
}
이 코드입니다.
다른 사람 풀이보니깐 재귀로 푼 사람도 있고 다양하더라구요
제 풀이도 참조용으로 사용하시면 될 거 같습니다.
반응형
'알고리즘 > 프로그래머스' 카테고리의 다른 글
프로그래머스 Lv2 - 카펫 - JAVA (2) | 2023.11.27 |
---|---|
프로그래머스Lv2 - 짝 지어 제거하기 - JAVA (1) | 2023.11.23 |
프로그래머스LV2 - 다음 큰 숫자 - JAVA (0) | 2023.11.18 |
프로그래머스 Lv2 - 숫자의 표현 - JAVA (0) | 2023.11.17 |
프로그래머스Lv2 - 이진 변환 반복하기 - JAVA (0) | 2023.11.16 |