λνκ°
λνκ°
λ¬Έμ μ€λͺ
Nλͺ
μ νμμ μνμ μκ° μ£Όμ΄μ§λλ€. Nλͺ
μ νμλ€μ νκ· (μμ 첫째μ리 λ°μ¬λ¦Ό)μ ꡬνκ³ , Nλͺ
μ νμ μ€ νκ· μ κ°μ₯ κ°κΉμ΄ νμμ λͺ λ²μ§Έ νμμΈμ§ μΆλ ₯νλ νλ‘κ·Έλ¨μ μμ±νμΈ μ.
νκ· κ³Ό κ°μ₯ κ°κΉμ΄ μ μκ° μ¬λ¬ κ°μΌ κ²½μ° λ¨Όμ μ μκ° λμ νμμ λ²νΈλ₯Ό λ΅μΌλ‘ νκ³ , λμ μ μλ₯Ό κ°μ§ νμμ΄ μ¬λ¬ λͺ
μΌ κ²½μ° κ·Έ μ€ νμλ²νΈκ° λΉ λ₯Έ νμμ λ²νΈλ₯Ό λ΅μΌλ‘ ν©λλ€.
β£ μ
λ ₯μ€λͺ
첫μ€μ μμ°μ N(5<=N<=100)μ΄ μ£Όμ΄μ§κ³ , λ λ²μ§Έ μ€μλ κ° νμμ μνμ μμΈ Nκ°μ μμ° μκ° μ£Όμ΄μ§λλ€. νμμ λ²νΈλ μμμλΆν° 1λ‘ μμν΄μ NκΉμ§μ΄λ€.
β£ μΆλ ₯μ€λͺ
첫μ€μ νκ· κ³Ό νκ· μ κ°μ₯ κ°κΉμ΄ νμμ λ²νΈλ₯Ό μΆλ ₯νλ€. νκ· μ μμ 첫째 μ리μμ λ°μ¬λ¦Όν©λλ€.
β£
10 45
β£
74
μ
λ ₯μμ 1
73 66 87 92 67 75 79 75 80
μΆλ ₯μμ 1 7
μμ μ€λͺ
)
νκ· μ΄ 74μ μΌλ‘ νκ· κ³Ό κ°μ₯ κ°κΉμ΄ μ μλ 73(2λ²), 75(7λ²), 75(9λ²)μ
λλ€. μ¬κΈ°μ μ μκ° λμ 75(7λ²), 75(9λ²)μ΄ λ΅μ΄ λ μ μκ³ , 75μ μ΄ λλͺ
μ΄λ―λ‘ νμλ²νΈκ° λΉ λ₯Έ 7λ²μ΄ λ΅μ΄ λ©λλ€.
λμ νμ΄
import Foundation
let n = Int(readLine()!)!
let input = readLine()!
let arr = input.components(separatedBy: " ")
let intArr = arr.map{Int($0)!}
let avg = Int(round(Double(intArr.reduce(0, +)) / Double(intArr.count)))
var minVal = 100
var minIdx = 0
var curVal = 0
for (i, num) in intArr.enumerated() {
if abs(avg-num) <= minVal {
if abs(avg-num) == minVal {
if num > curVal {
minVal = abs(avg-num)
minIdx = i+1
curVal = num
}
} else {
minVal = abs(avg-num)
minIdx = i+1
curVal = num
}
}
}
print("\(avg) \(minIdx)")
λ€λ₯Έ μ¬λμ νμ΄
import Foundation
let n = Int(readLine()!)!
let input = readLine()!
let arr = input.components(separatedBy: " ")
let intArr = arr.map{Int($0)!}
let avg = Int(round(Double(intArr.reduce(0, +)) / Double(intArr.count)))
var minVal = 100
var minIdx = 0
var curVal = 0
for (i, num) in intArr.enumerated() {
let tmp = abs(avg-num)
if tmp < minVal {
minIdx = i+1
minVal = tmp
curVal = num
} else if (tmp == minVal) {
if num > curVal {
minIdx = i+1
curVal = num
}
}
}
print("\(avg) \(minIdx)")
νΌλλ°±
1. λ΄ νμ΄μμλ ifλ¬Έ μμμ κ°μ κ²½μ°μ μ(==)μ λ λ² μ¬μ©ν΄μ 쑰건μ ν¨κ³Όμ μΌλ‘ λλμ§ λͺ»νλ€. (쑰건μ μ λλλ κ²μ΄ μ€μ)
2. μ€λ³΅λλ abs(avg-num)λ₯Ό λ³μλ‘ λμ