✏️ 문제풀이/백준

[백준/Java] 1009번 :: 숫자

bono-hye 2024. 12. 19. 19:32

| 문제

두 양의 정수가 주어졌을 때, 두 수 사이에 있는 정수를 모두 출력하는 프로그램을 작성하시오.

 

| 입력

두 정수 A와 B가 주어진다.

 

| 출력

첫째 줄에 두 수 사이에 있는 수의 개수를 출력한다.

둘째 줄에는 두 수 사이에 있는 수를 오름차순으로 출력한다.

 

| 풀이

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine());
        StringBuilder sb = new StringBuilder();

        long A = Long.parseLong(st.nextToken());
        long B = Long.parseLong(st.nextToken());

        if(B>A)
        {
            sb.append(B-A-1).append("\n");
            for(long i=A+1; i<B; i++)
                sb.append(i).append(" ");
        }
        if (A>B)
        {
            sb.append(A-B-1).append("\n");
            for(long i=B+1; i<A; i++)
                sb.append(i).append(" ");
        }
        if (A==B)
            sb.append("0");

        System.out.println(sb);
    }
}

 

| 정리

쉬운 문제라 생각하고 풀었는데 틀렸다.

이유를 찾아보니 당연히 B가 A보다 클 것이라고 생각하고 문제를 풀었던 것,,

그래서! 조건을 나눠서 풀이해줬다.