문제 링크: https://www.acmicpc.net/problem/5800
5800번: 성적 통계
첫째 줄에 중덕 고등학교에 있는 반의 수 K (1 ≤ K ≤ 100)가 주어진다. 다음 K개 줄에는 각 반의 학생수 N (2 ≤ N ≤ 50)과 각 학생의 수학 성적이 주어진다. 시험 성적은 0보다 크거나 같고, 100보다
www.acmicpc.net
15분 걸렸습니다.
package sixtysecond
import java.io.*
import java.util.*
import kotlin.collections.ArrayList
fun main(){
val br = BufferedReader(InputStreamReader(System.`in`))
val k = br.readLine().toInt()
val arr = Array(k){ArrayList<Int>()}
// StringTokenizer로 입력을 받아, 첫 번째 인자 만큼 반복문을 돌려
// 배열에 넣어주었습니다.
repeat(k){
val token = StringTokenizer(br.readLine())
val n = token.nextToken().toInt()
for (index in 0 until n){
arr[it].add(token.nextToken().toInt())
}
}
for (index in arr.indices){
println("Class ${index + 1}")
arr[index].sortByDescending{it}
var largestGap = 0
for (i in 1 until arr[index].size){
largestGap = Math.max(largestGap, Math.abs(arr[index][i] - arr[index][i - 1]))
}
println("Max ${arr[index].max()}, Min ${arr[index].min()}, Largest gap ${largestGap}")
}
}
'알고리즘 > 구현(백준)' 카테고리의 다른 글
[2023-06-07] 10157 자리배정 (Kotlin) (0) | 2023.06.07 |
---|---|
[2023-06-06] 1969 DNA (Kotlin) (1) | 2023.06.06 |
[2023-06-03] 1913 달팽이 (Kotlin) (0) | 2023.06.03 |
[2023-05-30] 2491 수열 (Kotlin) (0) | 2023.05.30 |
[2023-05-27] 1343 폴리오미노 (Kotlin) (0) | 2023.05.27 |
댓글