๋ฌธ์ ํ์ด
import Foundation
func solution(_ numbers:[Int]) -> Int {
var ans: Int = 0
for i in 0...9 {
ans += numbers.contains(i) != true ? i : 0
}
return ans
}
๋งจ ์ฒ์ ๋ฌธ์ ๋ฅผ ๋ณด์์ ๋, ๊ณ ์ฐจํจ์๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ๋จํ๊ฒ ์ฝ๋๋ฅผ ์์ฑํ๊ณ ์ถ์์ง๋ง ์ ์ฝ๋์ฒ๋ผ ์กฐ๊ฑด๋ฌธ์ ์ฌ์ฉํ์ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์๋ค.
๋ฌธ์ ํ์ด
import Foundation
func solution(_ numbers:[Int]) -> Int {
return (0...9).filter{ !numbers.contains($0) }.reduce(0, +)
}
์ฐ์ , ๋ฌธ์ ํ์ด๋ง ๊ตฌํํ์๊ณ ๊ณ ์ฐจํจ์๋ฅผ ์ฌ์ฉํ์ฌ ๋ค์ ์์ ํด๋ณด์๋ค!
๋ฌธ์ ํ์ด
func solution(_ arr:[Int]) -> [Int] {
var val_min = arr.min()!
var ans = arr
if ans.count == 1 {
return [-1]
}
else {
ans.remove(at: ans.firstIndex(of: val_min)!)
}
return ans
}
ํด๋น ๋ฌธ์ ๋ ๊ณ ์ฐจํจ์๋ฅผ ์ฌ์ฉํ์ฌ ํ์ด๋ฅผ ์๋ํ์์ผ๋, ์คํจํ๊ณ ์กฐ๊ฑด๋ฌธ์ผ๋ก ๋จผ์ ํ์ด๋ณด์๋ค... ๐ฅฒ
ํด๋น ์ฝ๋ ์ค์์ firstIndex(of: val_min)
์ ๋ฐํ๊ฐ์ด ์ต์
๋ ํ์
์ด์ฌ์, ์ด๋ฅผ ๊ฐ์ ๋ก ์ธ๋ฉํํ์ฌ ์ฌ์ฉํ์๋ค.
์๋ง ์ ๋ ฅ๋ ๋ฐฐ์ด์ ์๋ฌด๊ฒ๋ ์์ผ๋ฉด ๋ฐํ์ ์ค๋ฅ๊ฐ ๋ฐ์ํ ์ ์์ผ๋๊น, ์ต์ ๋ ํ์ ์ผ๋ก ๋ฐํ๋๋๊ฑฐ ๊ฐ๋ค.
๋ค์๋ถํฐ ์ต์
๋ ํ์
์ ๋ค๋ฃฐ ๋, !
๋ฅผ ํ์ฉํ ๊ฐ์ ์ธ๋ฉํ์ด ์๋๋ผ ๋์ฑ ์์ ํ ๋ฐฉ๋ฒ์ ์ฐพ์๋ณด์์ผ๊ฒ ๋ค!
๋ฌธ์ ํ์ด
func solution(_ s:String) -> String {
var val = s.map{$0}
var arr: [String] = []
var pos: Int = val.count / 2
if val.count % 2 == 1 {
arr.append(String(val[pos]))
}
else {
arr.append(String(val[pos-1]))
arr.append(String(val[pos]))
}
let ans = arr.reduce("", +)
return ans
}
๋ฌธ์ ํ์ด
func solution(_ n:Int) -> String {
var arr: [String] = []
var count: Int = 1
while count <= n {
count % 2 == 1 ? arr.append("์") : arr.append("๋ฐ")
count += 1
}
var ans = arr.joined()
return ans
}
์ฌ๋ฌ๋ฒ ์๋ ๋์ ๊ณ ์ฐจํจ์๋ฅผ ์ฌ์ฉํ์ง ๋ชปํ๊ณ ๋ฌธ์ ํ์ด๋ฅผ ๋ง๋ฌด๋ฆฌํ์๋ค.
์ด ๋ฌธ์ ๋ ๋ค์์ ๊น๋ํ๊ฒ ์ ๋ฆฌํด์ผ๊ฒ ๋ค!
๋ฌธ์ ํ์ด
import Foundation
func solution(_ a:[Int], _ b:[Int]) -> Int {
return (0..<a.count).map{ a[$0] * b[$0] }.reduce(0, +)
}
์ง๊ธ๊น์ง ํ์๋ ๋ฌธ์ ์ค์์ ๊ฐ์ฅ ๊น๋ํ๊ฒ ์ ํผ ๊ฒ ๊ฐ๋ค! map ํจ์๋ฅผ ์ฌ์ฉํ์ฌ, solution ํจ์์ ์ ๋ ฅ์ผ๋ก ๋ค์ด์ค๋ a์ b ๋ฐฐ์ด์ ๊ฐ๊ฐ์ ์ธ๋ฑ์ค๋ฅผ ๋ํ์๋ค. ์ดํ, reduce๋ฅผ ํ์ฉํ์ฌ ๋ชจ๋ ๊ฐ์ ๋ํ๊ณ ํด๋น ๊ฐ์ ๋ฐํํ์๋ค.