쥐수의 공부노트

백준 2217번 로프 본문

바킹독 알고리즘/그리드

백준 2217번 로프

쥐수 2023. 7. 27. 16:57
728x90

정답 :

let n = Int(readLine()!)!
var array = [Int]()
for i in 0..<n {
    let input = Int(readLine()!)!
    array.append(input)
}

func greed( array: [Int]) -> Int {
    var sortArray = array
    sortArray.sort(by: >)
    var ans = 0
    for i in 0..<n {
        ans = max(ans, sortArray[i] * (i+1))
    }
    return ans
}
print(greed(array: array))

해당 문제는 정렬을 역으로 해야한다.

 

역으로 한 뒤 줄을 자르는 것이 핵심!

728x90

'바킹독 알고리즘 > 그리드' 카테고리의 다른 글

백준 1026번 보물  (0) 2023.07.31
백준 1931번 회의실 배정  (0) 2023.07.27
백준 11047번 동전 0  (0) 2023.07.25