์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- ์ด์งํ์
- SwiftUI
- Swift
- ๋ฐฑ์ค
- ์ฝ๋ฉํ ์คํธ
- ์๊ณ ๋ฆฌ์ฆ
- Queue
- WebApp
- ios
- ์ฝํ
- ๋ฌธ์์ด
- ์์
- ๋นํธ์ฐ์ฐ์
- ์คํ
- ํ๋ก๊ทธ๋๋จธ์ค
- ๋ธ๋ฃจํธํฌ์ค ์๊ณ ๋ฆฌ์ฆ
- BFS
- ๋ถํ ์ ๋ณต
- dp
- ๋ฐฑํธ๋ํน
- ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ
- WebView
- ๋ถํ ์ ๋ณต
- dfs
- ๋ธ๋ฃจํธํฌ์ค
- ๋์ ํฉ
- ์ ํด๋ฆฌ๋ ํธ์ ๋ฒ
- ๋ถํ ํ์
Archives
- Today
- Total
MUKER_DEV with iOS
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ๊ณต์ ์ฐ์ฑ ๋ณธ๋ฌธ
์ฑ๊ณต ํ์ด
func solution(_ park:[String], _ routes:[String]) -> [Int] {
var now = (0,0)
let map = park.map {$0.map {$0}}
loop1: for (iindex,i) in park.enumerated() {
for (jindex,j) in i.enumerated() {
if j == "S" {
now = (iindex,jindex)
break loop1
}
}
}
loop2: for route in routes {
let r = route.split(separator: " ")
let way = r[0]
var width = Int(r[1])!
var temp = now
while width > 0 {
var move = (0,0)
switch way {
case "N": move = (-1,0)
case "S": move = (1,0)
case "W": move = (0,-1)
case "E": move = (0,1)
default : break
}
let new = (temp.0+move.0,temp.1+move.1)
guard new.0 >= 0 && new.0 < map.count && new.1 >= 0 && new.1 < map[0].count else { continue loop2 }
guard map[new.0][new.1] != "X" else { continue loop2 }
temp = new
width -= 1
}
now = temp
}
return [now.0,now.1]
}
'๐ค ์๊ณ ๋ฆฌ์ฆ > programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ๋ ํ ํฉ ๊ฐ๊ฒ ๋ง๋ค๊ธฐ (1) | 2023.05.24 |
---|---|
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ์ฃผ์ฌ์ ๊ฒ์ 1 (0) | 2023.05.22 |
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ๋กค์ผ์ดํฌ ์๋ฅด๊ธฐ (0) | 2023.05.05 |
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ์ฐ์๋ ๋ถ๋ถ ์์ด์ ํฉ (0) | 2023.05.05 |
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ๋ฌ๋ฆฌ๊ธฐ ๊ฒฝ์ฃผ (0) | 2023.05.03 |