숫자

문제 풀러가기

10093

코드

import java.util.*;

public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    long A = sc.nextLong();
    long B = sc.nextLong();

    if(A > B) {
      long tmp = A;
      A = B;
      B = A;
    }

    if(A == B) {
      System.out.println(0);
      return;
    }

    System.out.println(B - A - 1);

    for(long i = A + 1; i < B; i++) {
      System.out.print(i + " ");
    }
  }
}

설명

처음에 값의 크기를 생각하지 않고 int로 했다가 런타임에러가 주구장창 발생했다. 다시 문제를 읽고 long으로 고쳐서 해결했다. 또 조건을 잘 보면 A와 B의 대소비교에 대한 말이 없다. 따라서 같을수도 A가 클수도 작을수도 있으므로 모든 조건을 충족시켜서 작성했다.