[프로그래머스] 숫자의 표현

jaei kim·2023년 9월 12일

Finn은 요즘 수학공부에 빠져 있습니다. 수학 공부를 하던 Finn은 자연수 n을 연속한 자연수들로 표현 하는 방법이 여러개라는 사실을 알게 되었습니다. 예를들어 15는 다음과 같이 4가지로 표현 할 수 있습니다.

1 + 2 + 3 + 4 + 5 = 15
4 + 5 + 6 = 15
7 + 8 = 15
15 = 15
자연수 n이 매개변수로 주어질 때, 연속된 자연수들로 n을 표현하는 방법의 수를 return하는 solution를 완성해주세요.

🤔 챗헷

public class Solution {
    public int solution(int n) {
        int answer = 0;
        
        for (int i = 1; i <= n; i++) {
            int sum = 0;
            for (int j = i; j <= n; j++) {
                sum += j;
                if (sum == n) {
                    answer++;
                    break;
                }
                if (sum > n) {
                    break;
                }
            }
        }
        
        return answer;
    }
}

보아하니 이중for을 사용한 것을 볼 수 있다.
나는 항상 이중for을 사용할 때 범위값 주는 것을 어려워하였다.
예를 들어 위에 처럼 첫 번째 for문의 i를 두 번째 for문의 범위로 쓰는 경우,
내 머리론 이게 참 힘들었다.


친구랑 코딩테스트 준비를 같이 하면서 하루에 알고리즘 두 문제 풀기를 약속하였다.
지금 시각 00시 56분 친구는 잠들었다.
내가 이 문제를 풀지 못했다는 사실을 친구는 내일 볼 것이다.

친구야 미안해.. 나 좀 졸린 거 같아
대신 정말 월요일에 아, 이미 월요일이구나 그래도 내가 아직 안잤으니 지금은 일요일이야
월요일에 Lev2 2문제 풀게
너가 괜찮다고해도 사실 내가 안괜찮아

요즘 코테 볼 때마다 못 푸는게 스트레스다.
취업,,,하고 싶다.

profile
@studing_dobby

0개의 댓글