모든 숫자를 + 혹은 - 연산을 대입했을 경우를 확인하면서 마지막 원소에 해당하는 값을 확인했을때 타겟 넘버와 같으면 개수를 하나씩 늘려주는 방법으로 풀이함.이때 모든 경우를 확인하기 위해서 단순한 형태의 DFS를 사용함.
그래프내에서 독립적인 그룹의 개수를 찾을 때에는 BFS 알고리즘을 사용하여 (0,0) 노드 부터 방문하며 연결되어있는 노드를 방문하는 과정을 반복하며 더이상 연결된 노드가 없을시 그룹의 수를 1씩 증가하는 방법을 사용하여 해결한다.
코드를 더 간결하게 줄일수있을듯 하다.단어 하나를 그래프의 노드로 두고 각 단어별로 변환이 가능한 경우를 연결되었다고 생각하여 시작 단어를 포함하여 연결관계를 만든다.시작 단어부터 시작하여 BFS를 돌면 Target으로 가는 최소 경로를 찾을 수 있게 되고각 BFS를
단순 구현 문제로 문제가 요구하는 요구사항을 정확하게 구현만 하며되는 문제다.같은 공간에 두마리 이상의 상어가 접근하려는 경우 최소힙을 사용해서 O(1)시간에 어떤 상어를 남길지 파악했다.또한 1부터 우선순위를 갖기 때문에 deque를 사용하여 1이 돌아오는 경우를 한