백트랙킹 [node.js] BOJ - 15683 : 감시 (2) 각 감시카메라가 볼 수 있는 각도를 카메라별로 모두 탐색한다. - 가령, '첫 번째 2번 카메라는 (좌,우) (상,하) 이렇게 두 가지 방향을 볼 수 있으니, (좌,우)를 보는 경우를 고정해두고 '#'을 체크한 뒤, 다음 카메라로 넘어가서 또 그 카메라가 보는 곳을 표시해주고...'의 식으로 진행하는 것이다. 문제에서 카메라는 다음과 같이 총 5가지 종류이고, 각 카메라가 한 번에 볼... 백트랙킹DFS백준완전탐색DFS [알고리즘] 백준 - 연구소 효율성이 좋지 않았다. 이유는 combination 부분이었다. combination 부분을 이진법하는듯 방법으로 바꾸었다. (탈출조건에 처음에는 그냥 curPos >= emptySpaces.size() 라고 했다가 틀렸다. curPos가 마지막에 넘었더라도 count가 3이라면 그 경우는 처리해줘야 한다. 두 코드 성능 차이.... DFS브루트포스백트랙킹DFS [알고리즘] 백준 - 사다리 조작 일반적인 2차원 배열은 칸을 나타내는데 주어진 문제에서는 칸이 아닌 행과 열의 교차점이어서 그 부분이 문제를 접근하는데 많이 헷갈렸다. 문제의 searchOddNum 함수는 본인이 내려갈 지점에 가로선이 홀수개라면 절대 본인의 선 그대로 내려갈 수 없으니 미리 가지치기를 하는 것이다.... 다시 풀 알고리즘백트랙킹다시 풀 알고리즘 [알고리즘] 백준 - 스타트와 링크 알고리즘백준백트랙킹백준 [알고리즘] 백준 - 가르침 백트랙킹 중에서도 좀 더 세밀하게 문제 조건을 따져야하는 문제다. 처음에 꼭 배워야 하는 알파벳 다섯개가 주어진다. 그래서 K가 4개이하면 바로 종료 시켜야한다. 또한 문자열 검증을 할때도 앞뒤 4개씩 자르고 하면 속도가 좀 더 빠르다.... 백트랙킹백트랙킹
[node.js] BOJ - 15683 : 감시 (2) 각 감시카메라가 볼 수 있는 각도를 카메라별로 모두 탐색한다. - 가령, '첫 번째 2번 카메라는 (좌,우) (상,하) 이렇게 두 가지 방향을 볼 수 있으니, (좌,우)를 보는 경우를 고정해두고 '#'을 체크한 뒤, 다음 카메라로 넘어가서 또 그 카메라가 보는 곳을 표시해주고...'의 식으로 진행하는 것이다. 문제에서 카메라는 다음과 같이 총 5가지 종류이고, 각 카메라가 한 번에 볼... 백트랙킹DFS백준완전탐색DFS [알고리즘] 백준 - 연구소 효율성이 좋지 않았다. 이유는 combination 부분이었다. combination 부분을 이진법하는듯 방법으로 바꾸었다. (탈출조건에 처음에는 그냥 curPos >= emptySpaces.size() 라고 했다가 틀렸다. curPos가 마지막에 넘었더라도 count가 3이라면 그 경우는 처리해줘야 한다. 두 코드 성능 차이.... DFS브루트포스백트랙킹DFS [알고리즘] 백준 - 사다리 조작 일반적인 2차원 배열은 칸을 나타내는데 주어진 문제에서는 칸이 아닌 행과 열의 교차점이어서 그 부분이 문제를 접근하는데 많이 헷갈렸다. 문제의 searchOddNum 함수는 본인이 내려갈 지점에 가로선이 홀수개라면 절대 본인의 선 그대로 내려갈 수 없으니 미리 가지치기를 하는 것이다.... 다시 풀 알고리즘백트랙킹다시 풀 알고리즘 [알고리즘] 백준 - 스타트와 링크 알고리즘백준백트랙킹백준 [알고리즘] 백준 - 가르침 백트랙킹 중에서도 좀 더 세밀하게 문제 조건을 따져야하는 문제다. 처음에 꼭 배워야 하는 알파벳 다섯개가 주어진다. 그래서 K가 4개이하면 바로 종료 시켜야한다. 또한 문자열 검증을 할때도 앞뒤 4개씩 자르고 하면 속도가 좀 더 빠르다.... 백트랙킹백트랙킹