728x90
문제
두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 A와 B가 주어진다. (0 < A, B < 10)
출력
첫째 줄에 A/B를 출력한다. 실제 정답과 출력값의 절대오차 또는 상대오차가 10-9 이하이면 정답이다.
나의 접근방법
입력받은 값을 리스트에 저장하고 계산을 진행하였다.
코드
fun main(args: Array<String>) {
val inputString = readLine()
val stringArray = inputString!!.split(" ")
var doubleList: MutableList<Double> = mutableListOf()
stringArray.forEach{
doubleArray.add(it.toDouble())
}
val result = doubleArray[0] / doubleArray[1]
println(result)
}
구글링해보니까 다른 분들은 훨씬 짧고 간결하게 코딩을 했다... 내가 취업준비 시작하면서 알고리즘을 처음 푼 코드라 그런지 Kotlin스럽지도 못하고 굉장히 비효율적이다. 효율적인 코드를 한번 보자.
다른 사람의 효율적인 코드
import java.util.Scanner
fun main(args: Array<String>) = with(Scanner(System.`in`)){
println(nextDouble() / nextDouble())
728x90
'Algorithm > 백준 알고리즘' 카테고리의 다른 글
BOJ(1181) - Kotlin (0) | 2022.06.02 |
---|---|
BOJ(11050) - Kotlin (0) | 2022.05.31 |
BOJ(2869) - Kotlin (0) | 2022.05.28 |
BOJ(2839) - Kotlin (0) | 2022.05.27 |
BOJ(2775) - Kotlin (0) | 2022.05.26 |