2018. 7. 14. 13:55, 알고리즘/BOJ
https://www.acmicpc.net/problem/1315
퀘스트를 깸으로서 생기는 포인트의 증가를 무시하고 일단 내 포인트가 (i, j)일 때 깰 수 있는 퀘스트의 갯수를 미리 저장해둡니다.
그리고 큐에 우선 (1,1)을 넣어두고, 큐에서 원소를 꺼내면서 해당 INT/STR로 깰 수 있는 퀘스트가 있으면 포인트를 추가해 큐에 새로 넣어줍니다. 이 때 해당 INT/STR에 어떤 퀘스트를 깸으로서 도달했는지를 bitmasking으로 기억해둡니다.(코드 상의 state)
다른 사람들의 풀이를 보니 bitmasking을 사용하지 않고 빠르게 해결한 경우가 많던데 코드를 봐도 이해가 잘 안가 다음에 다시 한 번 살펴봐야하겠습니다.
'알고리즘 > BOJ' 카테고리의 다른 글
[BOJ] 7868번: Hamming Problem (0) | 2018.07.14 |
---|---|
[BOJ] 2449번: 전구 (0) | 2018.07.14 |
[BOJ] 11062번: Card Game (0) | 2018.07.14 |
[BOJ] 1572번: 중앙값 (0) | 2018.07.14 |
[BOJ] 13316번: std::정렬부터 시작하는 디버깅 생활 (0) | 2018.07.13 |
[BOJ] 15824번: 너 봄에는 캡사이신이 맛있단다 (0) | 2018.07.11 |
Comments