본문 바로가기

# 02/Swift - CTP

[Swift] 백준! 5635번 - 생일

반응형

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

 

5635번: 생일

어떤 반에 있는 학생들의 생일이 주어졌을 때, 가장 나이가 적은 사람과 가장 많은 사람을 구하는 프로그램을 작성하시오.

www.acmicpc.net

import Foundation

let n = Int(readLine()!)!
var list:[[String]] = []
for _ in 1...n {
    let l = readLine()!.split(separator: " ").map{ String($0) }
    list.append(l)
}
let sorted = list.sorted {
    let aY = Int($0[3])!
    let bY = Int($1[3])!
    if aY == bY {
        let aM = Int($0[2])!
        let bM = Int($1[2])!
        if aM == bM {
            let aD = Int($0[1])!
            let bD = Int($1[1])!
            return aD > bD
        } else {
            return aM > bM
        }
    } else {
        return aY > bY
    }
}
print(sorted[0][0])
print(sorted[sorted.count-1][0])
반응형