λ¬Έμ μ€λͺ
μΈνμνμλ ATMμ΄ 1λλ°μ μλ€. μ§κΈ μ΄ ATMμμ Nλͺ μ μ¬λλ€μ΄ μ€μ μμλ€. μ¬λμ 1λ²λΆν° Nλ²κΉμ§ λ²νΈκ° λ§€κ²¨μ Έ μμΌλ©°, iλ² μ¬λμ΄ λμ μΈμΆνλλ° κ±Έλ¦¬λ μκ°μ PiλΆμ΄λ€.
μ¬λλ€μ΄ μ€μ μλ μμμ λ°λΌμ, λμ μΈμΆνλλ° νμν μκ°μ ν©μ΄ λ¬λΌμ§κ² λλ€. μλ₯Ό λ€μ΄, μ΄ 5λͺ μ΄ μκ³ , P1 = 3, P2 = 1, P3 = 4, P4 = 3, P5 = 2 μΈ κ²½μ°λ₯Ό μκ°ν΄λ³΄μ. [1, 2, 3, 4, 5] μμλ‘ μ€μ μ λ€λ©΄, 1λ² μ¬λμ 3λΆλ§μ λμ λ½μ μ μλ€. 2λ² μ¬λμ 1λ² μ¬λμ΄ λμ λ½μ λ κΉμ§ κΈ°λ€λ €μΌ νκΈ° λλ¬Έμ, 3+1 = 4λΆμ΄ κ±Έλ¦¬κ² λλ€. 3λ² μ¬λμ 1λ², 2λ² μ¬λμ΄ λμ λ½μ λκΉμ§ κΈ°λ€λ €μΌ νκΈ° λλ¬Έμ, μ΄ 3+1+4 = 8λΆμ΄ νμνκ² λλ€. 4λ² μ¬λμ 3+1+4+3 = 11λΆ, 5λ² μ¬λμ 3+1+4+3+2 = 13λΆμ΄ κ±Έλ¦¬κ² λλ€. μ΄ κ²½μ°μ κ° μ¬λμ΄ λμ μΈμΆνλλ° νμν μκ°μ ν©μ 3+4+8+11+13 = 39λΆμ΄ λλ€.
μ€μ [2, 5, 1, 4, 3] μμλ‘ μ€μ μλ©΄, 2λ² μ¬λμ 1λΆλ§μ, 5λ² μ¬λμ 1+2 = 3λΆ, 1λ² μ¬λμ 1+2+3 = 6λΆ, 4λ² μ¬λμ 1+2+3+3 = 9λΆ, 3λ² μ¬λμ 1+2+3+3+4 = 13λΆμ΄ κ±Έλ¦¬κ² λλ€. κ° μ¬λμ΄ λμ μΈμΆνλλ° νμν μκ°μ ν©μ 1+3+6+9+13 = 32λΆμ΄λ€. μ΄ λ°©λ²λ³΄λ€ λ νμν μκ°μ ν©μ μ΅μλ‘ λ§λ€ μλ μλ€.
μ€μ μ μλ μ¬λμ μ Nκ³Ό κ° μ¬λμ΄ λμ μΈμΆνλλ° κ±Έλ¦¬λ μκ° Piκ° μ£Όμ΄μ‘μ λ, κ° μ¬λμ΄ λμ μΈμΆνλλ° νμν μκ°μ ν©μ μ΅μκ°μ ꡬνλ νλ‘κ·Έλ¨μ μμ±νμμ€.
μ λ ₯
첫째 μ€μ μ¬λμ μ N(1 ≤ N ≤ 1,000)μ΄ μ£Όμ΄μ§λ€. λμ§Έ μ€μλ κ° μ¬λμ΄ λμ μΈμΆνλλ° κ±Έλ¦¬λ μκ° Piκ° μ£Όμ΄μ§λ€. (1 ≤ Pi ≤ 1,000)
μΆλ ₯
첫째 μ€μ κ° μ¬λμ΄ λμ μΈμΆνλλ° νμν μκ°μ ν©μ μ΅μκ°μ μΆλ ₯νλ€.
μ μΆλ ₯ μμ
μ λ ₯
5
3 1 4 3 2
μΆλ ₯
32
λ΄ λ¬Έμ νμ΄
import Foundation
let num = Int(readLine()!)!
var line = readLine()!.split(separator: " ").map({Int(String($0))!})
var sum = 0
line.sort(by: >)
for i in 0..<num {
sum += line[i] * (i+1) // 첫 λ²μ§Έ μ¬λμ *num ~ λ§μ§λ§ μ¬λμ *1
}
print(sum)
π λκΈ°μκ°μ΄ κ°μ₯ 짧μ μ¬λλΆν° μ°¨λ‘λλ‘ μ€μ μλ κ²μ΄ κ°μ₯ ν¨μ¨μ μ΄λΌλ κ²μ΄,, ν¬μΈνΈ!
- μ
λ ₯λ°μ λκΈ° μκ°λ€μ λ΄λ¦Όμ°¨μμΌλ‘ μ λ ¬νλ€.
λ΄λ¦Όμ°¨μμΌλ‘ μ λ ¬ν μ΄μ λ, κ΅³μ΄ forλ¬Έμ λ°λλ‘ λ리λ μκ³ λ₯Ό νμ§ μμλ
맨 μμμλΆν° κ°μ₯ ν° μμλ *num, 맨 λ€ κ°μ₯ μμ μμλ *1 ν΄ μ€ μ μκΈ° λλ¬Έ! - μμκ°μ΄ κ³±νλ μ΄μ λ, λκΈ°μ€μ 첫 λ²μ§Έ μ¬λμ κ²½μ° λ³ΈμΈμ λκΈ°μκ°λ§νΌλ§ κΈ°λ€λ¦¬λ©΄λκ³
λ λ²μ§Έ μ¬λλΆν°λ μ μ¬λμ λκΈ° μκ°, λ κ·Έ μμ¬λμ λκΈ°μκ°..μ λͺ¨λ κΈ°λ€λ €μΌνκΈ° λλ¬Έμ΄λ€.
π‘ νΌλλ°±
- λκΈ°μκ°μ΄ 짧μμλ‘ μμ μλ©΄ λλ€λ κ²λ§ μλ©΄ κΈλ°© ν μ μλ λ¬Έμ μλ€.
λ¬Έμ
'3οΈβ£ Swift > Problem Solving' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Swift Algorithm] κ²μμ λ§λ λμ€μ΄ BOJ #2847 (0) | 2021.08.19 |
---|---|
[Swift Algorithm] μμ΄λ²λ¦° κ΄νΈ BOJ #1541 (2) | 2021.08.18 |
[Swift Algorithm] 보물 BOJ #1026 (0) | 2021.08.18 |
[Swift Algorithm] λ‘ν BOJ #2217 (0) | 2021.08.18 |
[Swift Algorithm] νμμ€ λ°°μ BOJ #1931 (0) | 2021.08.18 |
λκΈ