본문 바로가기
Algorithm & SQL/BAEKJOON

백준 JAVA 2018 수들의 합5

by YoonJong 2022. 8. 15.
728x90

https://www.acmicpc.net/problem/2018

 

2018번: 수들의 합 5

어떠한 자연수 N은, 몇 개의 연속된 자연수의 합으로 나타낼 수 있다. 당신은 어떤 자연수 N(1 ≤ N ≤ 10,000,000)에 대해서, 이 N을 몇 개의 연속된 자연수의 합으로 나타내는 가지수를 알고 싶어한

www.acmicpc.net

 

n 이 1 일때를 생각안하고 제출했더니, 100%에서 틀렸습니다가 나왔다.

한번 더 예외적인 부분을 생각해봐야겠다.

package BAEKJOON.Silver.Ⅴ;

import java.util.Scanner;

public class NO2018 {
    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();

        int start = 1;
        int end = 1;
        int count = 0;
        int sum = 0;

        if( start == n) {
            count ++;
        }

        while(start < n) {
            if( sum < n || end == n) {
                sum = sum + end;
                end++;
            } else {
                sum = sum - start;
                start++;
            }

            if( sum == n ) {
                count++;
            }
        }
        System.out.println(count);
    }
}

 

728x90

'Algorithm & SQL > BAEKJOON' 카테고리의 다른 글

백준 JAVA 3273 두 수의 합  (0) 2022.08.16
백준 JAVA 11728 배열 합치기  (0) 2022.08.16
백준 JAVA 12845 모두의 마블  (0) 2022.08.14
백준 JAVA 4796 캠핑  (0) 2022.08.14
백준 JAVA 13458 시험 감독  (0) 2022.08.14

댓글