[ํ๋ก๊ทธ๋๋จธ์ค LV.0 _ Swift] Day66 ์นด์ดํธ ๋ค์ด
๐ ๋ฌธ์ 1. ์นด์ดํธ ๋ค์ด
๐ ๋ฌธ์ ๋งํฌ : https://school.programmers.co.kr/learn/courses/30/lessons/181899
โ ์ ์ถ ์ฝ๋
import Foundation
func solution(_ start_num:Int, _ end_num:Int) -> [Int] {
//์์๋ฅผ ๋ด์ ๋น ๋ฐฐ์ด
//3๋ถํฐ 10๊น์ง ๋ฒ์ ๋ฐ๋ณต๋ฌธ
//๋ฐฐ์ด์ ์ถ๊ฐ
//๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌ
var result: [Int] = []
for i in end_num...start_num{
result.append(i)
}
return result.sorted(by: >)
}
๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํด ์๋ก์ด ๋ฐฐ์ด์ ๋ด๊ณ ๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌํด์ฃผ์๋ค.
ํ์ง๋ง ์๋ก์ด ๋ฐฐ์ด์ ์์ฑํ๊ณ , ๋ฒ์๊ฐ ๋ง์์ง ๊ฒฝ์ฐ ๋ฐ๋ณต๋ฌธ์ผ๋ก
์ผ์ผ์ด ๋ค ์ํํ๋ ๊ฒ์ด ํจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ์ผ๋ก๋ ๋๊ปด์ง์ง ์์๋ค.
๐ ๋ค๋ฅธ ํ์ด ๋ถ์
solution(_ start: Int, _ end: Int) -> [Int] {
Array((end...start).sorted().reversed())
}
๋ฒ์์ฐ์ฐ์(Closed Range Operator)๋ฅผ ์ฌ์ฉํด์ '3,4,5,6,7'์ ํฌํจํ๋ ๋ฒ์๋ฅผ ์์ฑํ๊ณ
Array๋ก ๋ฐฐ์ด์ ๋ง๋ค๊ณ reversed() ๋ฉ์๋๋ฅผ ์ฌ์ฉํด ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌ์ ํด์ฃผ๋ ๋ฐฉ์์ด๋ค.
๋ค๋ฅธ ํ์ด์์๋ Array๋ก ๊ฐ์ธ์ง ์๊ณ ์๋์ ๊ฐ์ ๋ฐฉ์์ผ๋ก ์ฌ์ฉํ ํ์ด๊ฐ ์์๋ค.
์ด ๋ฒ์๋ ๋ฐฐ์ด์ด ์๋๋ฉฐ, ๋ฒ์๋ ์ฐ์๋ ๊ฐ๋ค์ ํํํ๋ ์ํ์ค ๊ฐ์ฒด๋ผ๊ณ ํ๋ค.
๊ทธ๋ผ์๋ ๋ฐฐ์ด์ด ๋ ์ด์ ๋ reversed()๊ฐ ํธ์ถ๋๋ฉด์ ๋ฐฐ์ด์ด ๋ฐํ๋์ด ํต๊ณผ๋ ๊ฒ์ผ๋ก ๋ณด์ธ๋ค.
๊ทธ๋๋ ๋๋ ์ข ๋ ์์ ํ๊ฒ Array๋ก ๋ณํํด์ฃผ๋ ๋ฐฉ๋ฒ์ ํํ ๊ฒ ๊ฐ๋ค.