본문 바로가기

백준

[백준] [코틀린 Kotlin] 11382번_꼬마 정민

문제 링크

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

 

11382번: 꼬마 정민

첫 번째 줄에 A, B, C (1 ≤ A, B, C ≤ 1012)이 공백을 사이에 두고 주어진다.

www.acmicpc.net

 

 

백준 11382번 꼬마 정민 (Kotlin)

 

문제

 

꼬마 정민이는 이제 A + B 정도는 쉽게 계산할 수 있다. 이제 A + B + C를 계산할 차례이다!

 

 

입력

 

첫 번째 줄에 A, B, C (1 ≤ A, B, C ≤ 10^12)이 공백을 사이에 두고 주어진다.

 

 

출력

 

A+B+C의 값을 출력한다.

 

 

예제 입력 1 

 

77 77 7777

 

 

예제 출력 1 

 

7931

 

 

 

풀이

 

코드

 

메모리 15804KB

시간 120ms

코드 길이 227B

 

import java.io.BufferedReader
import java.io.InputStreamReader

fun main() = with(BufferedReader(InputStreamReader(System.`in`))) {
    val (a:Long, b:Long, c:Long) = readLine().split(" ").map { it.toLong() }
    print(a+b+c)
}

 

 

내 풀이

 

BufferedReader를 이용해 세 정수를 받아준다

그런데 이때 주의해야 할 점이 입력 시 A,B,C의 조건이 (1 ≤ A, B, C ≤ 10^12) 이므로 Int 값의 범위를 넘어가므로

세 정수를 Int가 아닌 Long으로 받아주어야 한다

(Int, Long 값의 범위는 아래 표 참고!)

그리고 출력 시 세 수를 더해주면 된다

 

 

타입 크기(bits) 최소값 최대값
Byte 8 -128 127
Short 16 -32,768 (-2^15) 32,767 (2^15 - 1)
Int 32 -2,147,483,648 (-2^31) 2,147,483,647 (2^31 - 1)
Long 64 -9,223,372,036,854,775,808 (-2^63) 9,223,372,036,854,775,807 (2^63 - 1)