2022. 10. 8. 10:51ใAlgorithm
์นด๋ ์ญ๋ฐฐ์น - ๋ฐฑ์ค(Swift)
๋ฌธ์ ์ค๋ช
https://www.acmicpc.net/problem/10804
๋์ ํ์ด
ํน์ Range๋งํผ ์ฌ๋ผ์ด์คํด์ reversed()ํ ๋์ ์ํค๋ฉด ๋๋ ์ฌ์ด ๋ฌธ์ ์์ง๋ง ์ค์ํํธ์ ReversedCollectionType, Arrayํ์ , ArraySliceํ์ ์ด ๋ช ํํ๊ฒ ๊ตฌ๋ถ๋์ด์๋ค๋ ๊ฑธ ์๊ฒ ๋ ๋ฌธ์ ์๋ค.
์ฒ์ Reversed()ํ ๋ค์ ๋์ ์ ํ๋ ReversedCollection์ Sliceํ์ ์ ๋์ ํ ์ ์๋ค๊ณ ๋์์ mapํ์ ๋ฐฐ์ด์ ๋ฃ์๋๋ ์ด๋ฒ์ Array๋ฅผ ArraySlice์ ๋ฃ์ง ๋ชปํ๋ค๊ณ ๋์๋ค.
๊ทธ๋์ ๋ง์ง๋ง์ ArraySlice๋ก ํ ๋ณํ์ ํด์ ํด๊ฒฐํ๋ค.
import Foundation
var arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
for _ in 0..<10 {
let input = readLine()!
let result = Array(input.components(separatedBy: " ")).map{Int($0)!}
arr[result[0]...result[1]] = ArraySlice(arr[result[0]...result[1]].reversed())
}
for i in 1...20 {
print(arr[i], terminator: " ")
}
ํผ๋๋ฐฑ
๋ฐฐ์ด์ ์ด๊ธฐํ ํ ๋๋ Array(0...20)์ ์ฌ์ฉํ์.
๋ฐฐ์ด์ ๋ฒ์์ ๊ฐ์ ํ ๋นํ ๋๋ ArraySlice๋ก ํ๋ณํํด์ ๋ฃ์ด์ค์ผํ๋ค.
'Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐฑ์ค - ATM(Swift) (0) | 2022.10.22 |
---|---|
๋ฐฑ์ค - ์คํ ๋ฐฐ๋ฌ(Swift) (0) | 2022.10.22 |
์ซ์๋ง ์ถ์ถ (0) | 2022.10.07 |
๋ฐฑ์ค - ํ๋ฌธ(Swift) (0) | 2022.10.06 |
ํ๋ฌธ ๋ฌธ์์ด ๊ฒ์ฌ(Swift) (1) | 2022.10.05 |