728x90
반응형

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

 

10093번: 숫자

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

www.acmicpc.net

 

 

1일 1백준 중인데 오늘은 할일이 넘 많아서 브론즈 쉬운거 풀고 튀튀하려고 했다.

그래서 마침 이 문제가 브론즈2이길래 + 문제가 개쉽길래 응 2분컷 하고 끝내려 했는데,,^^

 

 

후후 아니쥬..? 너무 가볍게 봤쥬..?

 

일단 쉽게 틀릴 수 있는 부분은 

1) A == B인 경우 0이 출력돼야하는데 이 부분을 고려안하고 코드를 짜게되면 -1이 출력된다!

2) 입력 값의 범위가 꽤 크기 때문에 long 타입을 써야한다.

Long.parseLong을 쓰면 된다. (이 문제때문에 처음 써봄.. 신기..)

import java.util.*;
import java.io.*;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        StringTokenizer st = new StringTokenizer(br.readLine());;
        long a = Long.parseLong(st.nextToken());
        long b = Long.parseLong(st.nextToken());
        if(a>b){
            long tmp = a;
            a = b;
            b = tmp;
        }
        if(a==b)
            sb.append(b-a).append("\n");
        else sb.append(b-a-1).append("\n");
        for(long i=a+1;i<b;i++){
            sb.append(i).append(" ");
        }
        System.out.println(sb);
    }
}

 

브론즈라고 깔보지 말자.. 급하게 풀지말자..

테스트케이스 제시된 것만 맞는다고 너 코드에 오류가 없을거라고 생각하지 마라..

728x90
반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기