๐ป Algorithm/Swift
[Swift] ๋ฐฑ์ค 15649 N๊ณผ M (1) (Back Tracking)
์ ์ฃผ
2023. 1. 31. 22:50
๐ ํ์ด
๐ฌ Code
import Foundation
let input = readLine()!.split(separator: " ").map { Int(String($0))! }
let n = input[0]
let m = input[1]
var isUsed = [Bool].init(repeating: false, count: n+1)
backTracking(0, [])
func backTracking(_ cnt: Int, _ arr: [String]) {
if cnt == m {
print(arr.joined(separator: " "))
return
}
for i in 1...n where !isUsed[i] {
isUsed[i] = true
backTracking(cnt+1, arr+[String(i)])
isUsed[i] = false
}
}
15649๋ฒ: N๊ณผ M (1)
ํ ์ค์ ํ๋์ฉ ๋ฌธ์ ์ ์กฐ๊ฑด์ ๋ง์กฑํ๋ ์์ด์ ์ถ๋ ฅํ๋ค. ์ค๋ณต๋๋ ์์ด์ ์ฌ๋ฌ ๋ฒ ์ถ๋ ฅํ๋ฉด ์๋๋ฉฐ, ๊ฐ ์์ด์ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํด์ ์ถ๋ ฅํด์ผ ํ๋ค. ์์ด์ ์ฌ์ ์์ผ๋ก ์ฆ๊ฐํ๋ ์์๋ก ์ถ๋ ฅํด
www.acmicpc.net