[Swift] 국영수

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

 

import Foundation

struct Student {
    var name: String
    var korean: Int
    var english: Int
    var math: Int

    init(_ info: [String]) {
        self.name = info[0]
        self.korean = Int(info[1])!
        self.english = Int(info[2])!
        self.math = Int(info[3])!
    }
}

let N = Int(readLine()!)!
var students: [Student] = []

for _ in 0..<N {
    let info = readLine()!.components(separatedBy: " ")
    let student = Student(info)
    students.append(student)
}

students.sort {
    return (
        -$0.korean,
         $0.english,
        -$0.math,
         $0.name
    ) < (
        -$1.korean,
         $1.english,
        -$1.math,
         $1.name
    )
}

students.forEach { print($0.name) }

 

'알고리즘' 카테고리의 다른 글

[Swift] 나이순 정렬  (0) 2025.08.20
[Swift] Queue와 Stack 구현하기  (1) 2023.12.24
[Swift] 달리기 경주  (0) 2023.10.24