본문 바로가기
Algorithm and PS/백준(Kotlin)

백준 - 2562 최댓값 (코틀린)

by ESHC 2021. 5. 10.

[문제]

www.acmicpc.net/problem/2562

 

2562번: 최댓값

9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어

www.acmicpc.net

[코드]

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

fun main() {
    val br = BufferedReader(InputStreamReader(System.`in`))
    val bw = BufferedWriter(OutputStreamWriter(System.out))
    var index = 0
    var max = 0
    for(i in 0..8) {
        val a = StringTokenizer(br.readLine()).nextToken().toInt()
        if (a > max) {
            max = a
            index = i+1
        }
    }
    bw.write("$max\n$index")
    bw.flush()
    bw.close()
}

//import java.util.*
//import java.io.*
//
//fun stack.stack.main() {
//    val br = BufferedReader(InputStreamReader(System.`in`))
//    val bw = BufferedWriter(OutputStreamWriter(System.out))
//    val array = Array(100) { 0 }
//    var max = 0
//    for(i in 0..8) {
//        val a = StringTokenizer(br.readLine()).nextToken().toInt()
//        array[a] = i + 1
//        if (a > max) max = a
//    }
//    bw.write(max.toString()+"\n" + array[max].toString())
//    bw.flush()
//}

[풀이]

기본문제.

처음에는 Array의 인덱스와 값을 이용하여 최댓값을 구했으나

굳이 어렵게 Array에 담지 않아도 인덱스나 최댓값을 바로 구할 수 있기 떄문에 수정하여 더 빠르게 값을 구했다.

 

Github : https://github.com/eshc123/2021AlgorithmStudy/blob/main/src/main/PS/baekjoon/2562.kt

댓글