amid.jungs

[Kotlin] 백준15552 본문

코딩테스트

[Kotlin] 백준15552

amid.jungs 2022. 1. 22. 11:34

Ⅰ. 문제

빠른 A+B

Java를 사용하고 있다면, Scanner System.out.println 대신 BufferedReader BufferedWriter를 사용할 수 있다. BufferedWriter.flush는 맨 마지막에 한 번만 하면 된다.

입력 ) 첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 1,000,000이다. 다음 T줄에는 각각 두 정수 A와 B가 주어진다.

            A와 B는 1 이상, 1,000 이하이다.

 
출력) 각 테스트케이스마다 A+B를 한 줄에 하나씩 순서대로 출력한다.
 
 

Ⅱ. 문제풀이

 

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

fun main () = with(BufferedReader(InputStreamReader(System.`in`))) {

    val w = BufferedWriter(OutputStreamWriter(System.out))
    
    for(i in 1 ..readLine().toInt()){
    	StringTokenizer(readLine()).run {
        	val a = nextToken().toInt()
            val b = nextToken().toInt()
            
            w.write("${a+b}\n")
          }
      }
   w.flush()
   w.close()
   close()
 }

 

  •  BufferwsReader & BufferedWriter : 입력된 데이터가 바로 전달되지 않고 버퍼를 거친 후 전달되므로 Scanner보다 속도가 삐름
  • readLine : 입력받은 값을 String으로 변환 ( 여기서는 숫자를 사용하므로  int로 변환)
  • StringTokenizer : 공백을 기준으로 String을 나눠줌

 

'코딩테스트' 카테고리의 다른 글

[Kotlin]백준2742  (0) 2022.01.30
[Kotlin]백준 2741  (0) 2022.01.30
[Kotlin] 백준8393  (0) 2022.01.21
[Kotlin]백준 10950  (0) 2022.01.21
[Kotlin] 백준2739  (0) 2022.01.21
Comments