Swift알고리즘
백준 9663: N-Queen (Swift)
앱등개발자IOS
2022. 5. 25. 17:46
모든 경우를 탐색해야하는 백트래킹 문제이다.
python이었다면 dfs()함수를 구현하는 방법 외에도, from itertools import permutations 라는 아주 간편한 친구가 있긴하지만,
우리는 코딩을 좋아(?)하니까 직접 구현을 하면서 공부해보자..^^
코딩 인터뷰 준비를 하면서 느낀 점이, 알고리즘 풀이는 고등학교 시절 수학 공부와 매우 닮아있는 것 같다.
일단 기본 개념 ( = 알고리즘 원리 + 구현 )만 정확히 알고있으면, 그 형태에서 조그마한 변경을 주어 관련 문제들을 풀어낼 수 있다.
이번 2022 KAKAO 인턴 코딩테스트에서도, 이런저런 알고리즘을 머리와 손에 익혀둔 것을 바탕으로
문제에 맞게 적용하여 풀이한 기억이 있다.
이 문제를 풀면서도, 이전에 포스팅했던 N과 M(1)의 permutation(순열) 코드를 머릿속으로 떠올리며
그 틀에 맞춰 구현했다.
이 코드는 몇 달 전에 Swift로 알고리즘 풀이를 처음 시작하며 작성했던 코드이다.
아래의 코드는 방금 전 풀이한 코드이다.
역시 알고리즘 풀이 코드는 언제 짜도 다르게 나온다 ㅎㅎ