계단 오르기 8
계단은 0번째 칸부터 \(N\)번째 칸까지 번호가 붙어 있다. 0번째 칸에서 출발해 \(N\)번째 칸에 도착하려고 한다.
한 번에 1칸, 2칸 또는 3칸을 올라갈 수 있다. 이동 순서가 다르면 서로 다른 방법으로 센다. 예를 들어 1 2와 2 1은 서로 다른 방법이다.
1칸 이동은 최대 \(A\)번, 2칸 이동은 최대 \(B\)번, 3칸 이동은 최대 \(C\)번 사용할 수 있다. 어느 이동 방식도 반드시 사용할 필요는 없다.
각 이동 방식의 사용 횟수 제한과 전체 이동 횟수 \(K\)번 이하의 제한을 모두 지키며 \(N\)번째 칸에 도착하는 방법의 수를 구하여라.
입력
첫째 줄에 \(N\), \(K\), \(A\), \(B\), \(C\)가 공백으로 구분되어 주어진다.
출력
조건을 만족하는 방법의 수를 출력한다.
제한
- \(1 \le N \le 15\)
- \(1 \le K \le 15\)
- \(0 \le A, B, C \le K\)
예제 입력
3 3 1 1 0
예제 출력
2
예제 설명
1칸 이동과 2칸 이동을 각각 한 번씩 사용하는 1 2, 2 1이 가능하다. 3은 3칸 이동을 사용할 수 없어 제외된다.
코멘트