Algorithm/BOJ

[Bronze V/JAVA] 10951 A+B-4 (EOF)

carsumin 2024. 10. 16. 21:36

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

 

 

 

* EOF๋Š” End of File์˜ ์•ฝ์ž๋กœ, ๋” ์ด์ƒ ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค.

* ๋‹ค์–‘ํ•œ ํ’€์ด ๋ฐฉ๋ฒ•์€ ์ด ๋ถ„์˜ ๋ธ”๋กœ๊ทธ๋ฅผ ์ฐธ๊ณ ํ–ˆ๋‹ค. (https://st-lab.tistory.com/40)

 

 

Scanner ์ด์šฉํ•œ ํ’€์ด

 

  • hasNextInt(), hasNext() ๋‘˜ ์ค‘ ์•„๋ฌด๊ฑฐ๋‚˜ ์‚ฌ์šฉํ•ด๋„ ๋จ
  • hasNextInt() : ์ž…๋ ฅ๊ฐ’์ด ์ •์ˆ˜์ผ๊ฒฝ์šฐ true ๋ฐ˜ํ™˜, ์ •์ˆ˜ ์•„๋‹๊ฒฝ์šฐ ์˜ˆ์™ธ ๋ฐœ์ƒํ•˜๊ณ  false ๋ฆฌํ„ด ๋ฐ ๋ฐ˜๋ณต๋ฌธ ์ข…๋ฃŒ
import java.util.*;

class Main{
    public static void main(String[] args){
    
    Scanner sc = new Scanner(System.in);
    
    while(sc.hasNextInt()){
    	int a = sc.nextInt();
        int b = sc.nextInt();
        System.out.println(a+b);
    }
    sc.close();
}

 

 

BufferedReader ์ด์šฉํ•œ ํ’€์ด

 

  • ์ฒซ๋ฒˆ์งธ ํ’€์ด (StringTokenizer)
  • StringTokenizer ์ด์šฉํ•˜์—ฌ ๋ฌธ์ž์—ด ๋ถ„๋ฆฌ
  • str ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๊ฐ€ null์ผ ๊ฒฝ์šฐ while ๋ฐ˜๋ณต๋ฌธ ์ข…๋ฃŒ
import java.io.*;
import java.util.*;

class Main{
    public staic void main(String[] args){
    	BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        StringTokenizer st;
        String str;
        
        while((str=br.readLine()) != null){
            st = new StringTokenizer(str," ");
            int a = Integer.parseInt(st.nextToken());
            int b = Integer.parseInt(st.nextToken());
            sb.append((a+b).append("\n");
        }
        System.out.print(ab);
    }
}

 

  • ๋‘๋ฒˆ์งธ ํ’€์ด(charAt())
  • ๋ฌธ์ œ์—์„œ ํ•œ์ž๋ฆฌ ์ •์ˆ˜๋งŒ ์ž…๋ ฅ๋ฐ›๊ธฐ ๋•Œ๋ฌธ์— ๊ณต๋ฐฑ ์œ„์น˜๋„ ๊ณ ์ •๋˜๋Š” ์ ์„ ์ด์šฉ
  • ์•„์Šคํ‚ค์ฝ”๋“œ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๊ธฐ ๋•Œ๋ฌธ์— -48 ๋˜๋Š” -'0' ์„ ํ•ด์„œ ์ •์ˆ˜ํ˜•์œผ๋กœ ๋ณ€ํ™˜
  • ํ’€์ด ๋ฐฉ๋ฒ•์ค‘ ๊ฐ€์žฅ ์„ฑ๋Šฅ์ด ์ข‹๋‹ค
import java.io.*;

class Main{
    public static void main(String[] args){
    	BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        String str;
        
        while((str=br.readLine()) != null){
            int a = str.charAt(0) - 48;
            int b = str.charAt(2) - 48;
            sb.append(a+b).append("\n");
        }	
        System.out.print(sb);
    }	
}