2018. 4. 26. 11:14, 알고리즘/BOJ
https://www.acmicpc.net/problem/1562
D[i][j][k]를 i자리, 끝자리가 j, 사용된 숫자의 상태가 k인 갯수로 사용했습니다. 상태는 0~9를 bitmask로 저장했습니다. 이 때
D[i][j][k] = D[i-1][j - 1][k]+D[i-1][j - 1][k ^ bit_digit(j)]+D[i-1][j + 1][k]+D[i-1][j + 1][k ^ bit_digit(j)] 가 됩니다.
이외에도 초기값 a에 대해 +1, -1을 해준다는 관점에서 아무리 작아져도 -a, 아무리 커져도 9 범위 안에서 움직이는 경우의 수라는 관점에서 어떻게 잘 해볼 수 있을 것 같았는데 잘 안됐습니다.
'알고리즘 > BOJ' 카테고리의 다른 글
[BOJ] 11585번: 속타는 저녁 메뉴 (0) | 2018.04.26 |
---|---|
[BOJ] 9661번: 돌 게임 7 (0) | 2018.04.26 |
[BOJ] 9660번: 돌 게임 6 (0) | 2018.04.26 |
[BOJ] 1305번: 광고 (0) | 2018.04.26 |
[BOJ] 1179번: 마지막 조세퍼스 문제 (0) | 2018.04.25 |
[BOJ] 11025번: 조세퍼스 문제 3 (2) | 2018.04.25 |
Comments