[BOJ] 1315번: RPG

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


퀘스트를 깸으로서 생기는 포인트의 증가를 무시하고 일단 내 포인트가 (i, j)일 때 깰 수 있는 퀘스트의 갯수를 미리 저장해둡니다.


그리고 큐에 우선 (1,1)을 넣어두고, 큐에서 원소를 꺼내면서 해당 INT/STR로 깰 수 있는 퀘스트가 있으면 포인트를 추가해 큐에 새로 넣어줍니다. 이 때 해당 INT/STR에 어떤 퀘스트를 깸으로서 도달했는지를 bitmasking으로 기억해둡니다.(코드 상의 state)


다른 사람들의 풀이를 보니 bitmasking을 사용하지 않고 빠르게 해결한 경우가 많던데 코드를 봐도 이해가 잘 안가 다음에 다시 한 번 살펴봐야하겠습니다.


https://github.com/blisstoner/BOJ/blob/master/1315.cpp

  Comments