Potato
์•ˆ๋…•ํ•˜์„ธ์š”, ๊ฐ์žก๋‹ˆ๋‹ค?๐Ÿฅ” ^___^ ๐Ÿ˜บ github ๋ฐ”๋กœ๊ฐ€๊ธฐ ๐Ÿ‘‰๐Ÿป

Algorithm/Baekjoon

[๋ฐฑ์ค€] (Swift) 15651๋ฒˆ - N๊ณผ M(4) (feat. DFS, ๋ฐฑํŠธ๋ž˜ํ‚น)

๊ฐ์ž ๐Ÿฅ” 2023. 1. 12. 11:10
๋ฐ˜์‘ํ˜•

๐ŸŸ  ๋ฌธ์ œ

https://www.acmicpc.net/problem/15652

 

15652๋ฒˆ: N๊ณผ M (4)

ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ๋ฌธ์ œ์˜ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ˆ˜์—ด์„ ์ถœ๋ ฅํ•œ๋‹ค. ์ค‘๋ณต๋˜๋Š” ์ˆ˜์—ด์„ ์—ฌ๋Ÿฌ ๋ฒˆ ์ถœ๋ ฅํ•˜๋ฉด ์•ˆ๋˜๋ฉฐ, ๊ฐ ์ˆ˜์—ด์€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•ด์„œ ์ถœ๋ ฅํ•ด์•ผ ํ•œ๋‹ค. ์ˆ˜์—ด์€ ์‚ฌ์ „ ์ˆœ์œผ๋กœ ์ฆ๊ฐ€ํ•˜๋Š” ์ˆœ์„œ๋กœ ์ถœ๋ ฅํ•ด

www.acmicpc.net

๐ŸŸ  ๋‚ด๊ฐ€ ํ‘ผ ํ’€์ด

N๊ณผ M๋ฌธ์ œ ์„ธํŠธ๊ฐ€... (8)๊นŒ์ง€ ์žˆ์—ˆ๋˜๊ฒƒ ๊ฐ™์€๋ฐ,,, ์ดํ‹€ ์ •๋„๋งŒ ์–ผ๋ฅธ ๋” ํ’€๊ณ  ๋๋‚ด์•ผ์ง€,,, ์žฌ๋ฏธ๊ฐ€ ์—†๋‹ค ์žฌ๋ฏธ๊ฐ€!! 

์ด๊ฒƒ์€ N๊ณผ M(2)๋ฒˆ๊ณผ ๊ฐ€์žฅ ํก์‚ฌํ•˜๋‹ค. (2)๋ฒˆ์€ (1)๋ฒˆ ๊ธฐ์ค€์œผ๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๋œ ์ˆ˜์—ด๋“ค๋งŒ ์ถœ๋ ฅํ•˜๋Š” ๊ฒƒ์ด์—ˆ๋Š”๋ฐ (4)๋ฒˆ์€ (3)๋ฒˆ์—์„œ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ์ˆ˜์—ด๋“ค๋งŒ ์ถœ๋ ฅํ•˜๋ฉด ๋œ๋‹ค. ... ๊ทธ๋Œ€๋กœ ๋˜‘๊ฐ™์€ ํ’€์ด๋ฅผ ์ด์šฉํ•˜๊ณ , ๋ฒ”์œ„๋งŒ ์‚ด์ง ๋ฐ”๊ฟ”์ฃผ๊ณ ! start ๋ผ๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ด์คฌ๋‹ค.

ํ˜„์žฌ i ๋ณด๋‹ค ํฐ ์ˆ˜๋“ค๋งŒ ์ทจ๊ธ‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ „๋‹ฌํ•ด์ค€ ๊ฒƒ์ด๋‹ค! DFS๊ฐ€ ์–ด๋–ป๊ฒŒ ๋Œ์•„๊ฐ€๋Š”์ง€์— ๋Œ€ํ•œ ์ž์„ธํ•œ ํ’€์ด๋Š” (1)๋ฒˆ ํ’€์ด๋ฅผ ์ฐธ๊ณ ํ•ด๋ณด์ž.

๐ŸŸ  ์ •๋‹ต์ฝ”๋“œ

let NM = readLine()!.split(separator: " ").map{ Int($0)! }
let N = NM[0]
let M = NM[1]

var stack = [Int]()
var answer = ""

private func dfs(start: Int) {
    if stack.count == M {
        answer += stack.map{ String($0) }.joined(separator: " ")
        answer += "\n"
        return
    }

    for i in start..<N+1 {
        stack.append(i)
        dfs(start: i)
        stack.removeLast()
    }
}

dfs(start: 1)
print(answer)

 

๐Ÿ”– N๊ณผ M ๊ด€๋ จ ๋ฌธ์ œ๋“ค ์ž์„ธํ•œ ํ’€์ด๋Š” ์•„๋ž˜์—์„œ ๋ณด๋ฉด๋œ๋‹น

https://didu-story.tistory.com/371

 

[๋ฐฑ์ค€] (Swift) 15649๋ฒˆ - N๊ณผ M(1) (feat. DFS, ๋ฐฑํŠธ๋ž˜ํ‚น)

๐ŸŸ  ๋ฌธ์ œ https://www.acmicpc.net/problem/15649 15649๋ฒˆ: N๊ณผ M (1) ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ๋ฌธ์ œ์˜ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ˆ˜์—ด์„ ์ถœ๋ ฅํ•œ๋‹ค. ์ค‘๋ณต๋˜๋Š” ์ˆ˜์—ด์„ ์—ฌ๋Ÿฌ ๋ฒˆ ์ถœ๋ ฅํ•˜๋ฉด ์•ˆ๋˜๋ฉฐ, ๊ฐ ์ˆ˜์—ด์€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•ด์„œ ์ถœ๋ ฅํ•ด

didu-story.tistory.com

https://didu-story.tistory.com/372

 

[๋ฐฑ์ค€] (Swift) 15650๋ฒˆ - N๊ณผ M(2) (feat. DFS, ๋ฐฑํŠธ๋ž˜ํ‚น)

๐ŸŸ  ๋ฌธ์ œ https://www.acmicpc.net/problem/15650 15650๋ฒˆ: N๊ณผ M (2) ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ๋ฌธ์ œ์˜ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ˆ˜์—ด์„ ์ถœ๋ ฅํ•œ๋‹ค. ์ค‘๋ณต๋˜๋Š” ์ˆ˜์—ด์„ ์—ฌ๋Ÿฌ ๋ฒˆ ์ถœ๋ ฅํ•˜๋ฉด ์•ˆ๋˜๋ฉฐ, ๊ฐ ์ˆ˜์—ด์€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•ด์„œ ์ถœ๋ ฅํ•ด

didu-story.tistory.com

https://didu-story.tistory.com/374

 

[๋ฐฑ์ค€] (Swift) 15651๋ฒˆ - N๊ณผ M(3) (๋‘๋ฒˆ์งธ ํ’€์ด) (feat. DFS, ๋ฐฑํŠธ๋ž˜ํ‚น)

๐ŸŸ  ๋ฌธ์ œ https://www.acmicpc.net/problem/15651 15651๋ฒˆ: N๊ณผ M (3) ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ๋ฌธ์ œ์˜ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ˆ˜์—ด์„ ์ถœ๋ ฅํ•œ๋‹ค. ์ค‘๋ณต๋˜๋Š” ์ˆ˜์—ด์„ ์—ฌ๋Ÿฌ ๋ฒˆ ์ถœ๋ ฅํ•˜๋ฉด ์•ˆ๋˜๋ฉฐ, ๊ฐ ์ˆ˜์—ด์€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•ด์„œ ์ถœ๋ ฅํ•ด

didu-story.tistory.com

 

๋ฐ˜์‘ํ˜•