📌 Skill
- 문자열에서 특정 문자가 몇 번 나오는지 구하기
- 딕셔너리를 key와 value값을 토대로 정렬하기
let yeonDuName = readLine()!
let n = Int(readLine()!)!
var points = [String: Int]()
// let sortedPoints: Dictionary<String, Int>
func countPoints(name: String) -> Int {
let L = name.filter { $0 == "L" }.count + yeonDuName.filter { $0 == "L" }.count
let O = name.filter { $0 == "O" }.count + yeonDuName.filter { $0 == "O" }.count
let V = name.filter { $0 == "V" }.count + yeonDuName.filter { $0 == "V" }.count
let E = name.filter { $0 == "E" }.count + yeonDuName.filter { $0 == "E" }.count
return ((L+O)*(L+V)*(L+E)*(O+V)*(O+E)*(V+E)) % 100
}
for _ in 0..<n {
let name = readLine()!
let point = countPoints(name: name)
points[name] = point
}
let sortedPoints = points.sorted {(first, second) in
if first.value == second.value {
return first.key < second.key
}
return first.value > second.value
}
print(sortedPoints.first!.key)
딕셔너리.sorted를 사용하면 타입이 Array로 바뀌게 된다
새로운 변수에 결과를 할당하자