[프로그래머스,Level 2] 숫자의 표현 (JAVA 구현)

2021. 1. 26. 13:15·CodingTest/프로그래머스(Programmers)
반응형

- 첫 풀이 및 정답풀이

  이 문제의 핵심은 연속된 자연수들로 n이라는 특정 수를 만들 수 있는 경우의 수를 찾는 것이다. dp로 푸는 방법이 있을까 하고 규칙성을 찾아보았지만, 찾지 못했고 단순한 완전 탐색 문제라고 생각되어 반복문을 이용해 간단하게 해결할 수 있었다. 

 

class Solution {
    public int solution(int n) {
        int answer = 0;
        int temp;
        
        // 1. 1부터 n까지 반복, 각 경우의 시작 숫자.
        for(int i = 1;i <= n; i++){
            // 2. 모두 더한 값이 저장되는 변수.
            int sum = 0;
            // 3. 각 경우의 시작 값.
            temp = i;
            // 4. sum <= n인 경우는 계속해서 더해준다.
            while(sum <= n){
                // 5. sum == n인 경우 answer증가, n을 넘은 경우는 반복문만 벗어난다.
                if(sum == n){
                    answer++;
                    break;
                }
                // 6. temp값을 1씩 증가시키며 연속되는 자연수를 더해준다.
                sum+=temp;
                temp++;
            }
            
        }
        
        return answer;
    }
}
저작자표시 (새창열림)
'CodingTest/프로그래머스(Programmers)' 카테고리의 다른 글
  • [프로그래머스,Level 2] 최솟값 만들기 (JAVA 구현)
  • [프로그래머스,Level 2] 최댓값과 최솟값 (JAVA 구현)
  • [프로그래머스,Level 2] 땅따먹기 (JAVA 구현)
  • [프로그래머스,Level 2] 다음 큰 숫자 (JAVA 구현)
뜸부깅
뜸부깅
코딩에 대한 여러 개인적인 생각을 정리하고 공부를 하는 공간입니다!!
  • 뜸부깅
    코오오딩
    뜸부깅
  • 전체
    오늘
    어제
    • Note (429)
      • Skill (31)
        • Java & Spring (9)
        • Javascript & HTML & CSS (0)
        • React (0)
        • Next.js (22)
      • CodingTest (389)
        • 백준 온라인 저지(BOJ) (140)
        • 프로그래머스(Programmers) (79)
        • LeetCode (170)
      • Algorithm & Data Structure (6)
      • [Project] 포트폴리오 (3)
        • Front end (3)
        • Back end (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    next 14
    백준1260
    leetcode 2236
    meidum
    백준1427
    Java
    자바
    boj1427
    알고리즘
    프로그래머스
    boj2108
    medium
    백준2751
    백준7576자바
    TypeScript
    백준
    Easy
    BOJ
    component-scan
    백준7576
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
뜸부깅
[프로그래머스,Level 2] 숫자의 표현 (JAVA 구현)
상단으로

티스토리툴바