구조체를 공부를 위해 좋은 문제라고 생각되는 10814!
여러 변수를 보고 구조체를 생각해 낸 후, 배열에 구조체를 저장한 후 특정 프로퍼티의 정렬순서에 맞게 출력하는게 핵심이라고 생각한다👀
순서를 정리해보자면,
- name, age를 담은 Member 구조체 생성
- 구조체를 저장하기 위한 배열 memArr 생성
- 입력받은 데이터를 Member 구조체의 프로퍼티에 맞게 지정후, memArr에 append!
- memArr을 age 오름차순으로 정렬 후, sortedArr에 저장
- 출력!
import Foundation
struct Member {
var name: String
var age: Int
}
var memArr: [Member] = []
let n = Int(readLine()!)!
for i in 0..<n {
let person = readLine()!.split(separator: " ").map{ String($0) }
let mem = Member(name: person[1], age: Int(person[0])!)
memArr.append(mem)
}
let sortedArr = memArr.sorted(by: {$0.age < $1.age})
for i in 0..<n {
print(sortedArr[i].age, sortedArr[i].name)
}
'Swift' 카테고리의 다른 글
[Swift] 서브스크립트 (0) | 2022.08.13 |
---|---|
[Swift] 상속 (0) | 2022.08.02 |
[Swift] zip(_:_:) (0) | 2022.07.27 |
[Swift] 모나드 : 컨텍스트, 함수객체, 모나드 (0) | 2022.03.24 |
[Swift] 맵, 필터, 리듀스 (0) | 2022.03.22 |