오답노트
BFS 관련 팁 본문
1. 좌표계를 그대로 할 것.
-> 아무 생각없이 x축 y축을 바꿔서 받았더니 결과가 다르게 나옴
-> 대충 맞는 부분도 있지만 다른것이 존재함
2. queue 에 push 하는 타이밍
-> 좌표계에서 인접한 객체를 찾을 때
=> 좌표계를 전부 돌면서 객체를 발견할 때 마다 push
-> 좌표계에서 지정된 지점부터 점점 퍼져 나갈 때
=> 좌표계를 입력 받을때 미리 push
3. 다른 큐와 비교할 때 주의점
-> 다른 큐가 방문했던 곳을 비교해서 방문할때 아예 방문하지 않았을 때도 생각해야한다.
ex) 다른 큐가 방문했던 곳을 비교할때 자신보다 작을때를 비교한다 (현재 큐 돌고있는 큐보다 먼저 왔었는지)
그때 아예 방문하지 않았을 때도 고려해야한다.
보통 -1로 배열을 초기화 하기때문에 방문하지 않으면 자신보다 무조건 작다.
결론적으로 조건문을 만들때 방문을 했으면서 자신보다 작은지 확인해야한다.
... 문제를 풀다 메모할만한 것들은 메모...
'C,C++ > 코딩테스트' 카테고리의 다른 글
[수학] BOJ 2960 에라토스테네스의 체 (0) | 2022.04.24 |
---|---|
[수학][DP] BOJ 17425 약수의 합 - 오답노트 (0) | 2022.04.21 |
[수학] BOJ17427 약수의 합 2 - 오답노트 (0) | 2022.04.20 |
DP 점화식 패턴 (0) | 2022.04.13 |
수학 관련 팁 (0) | 2022.03.23 |