R03482
Climbing Stairs with a Step Set
레이팅
의견: 0
설명
\(n\)개의 계단을 오른다. 각 이동에서 주어진 허용 보폭 집합 \(S\)에 있는 값만큼 올라갈 수 있다. 바닥(0번)에서 시작하여 꼭대기(\(n\)번)에 도달하는 서로 다른 순서 있는 방법의 수를 \(10^9+7\)로 나눈 나머지로 세시오. 이동 순서가 다르면 서로 다른 방법으로 센다.
제약
입력 형식
첫 줄에 \(n\) (\(1 \le n \le 10^5\))이 주어진다. 둘째 줄에 허용 보폭의 개수 \(m\) (\(1 \le m \le 7\))이 주어진다. 셋째 줄에 \(m\)개의 서로 다른 정수 \(s_1, \dots, s_m\)이 주어진다 (\(1 \le s_i \le 7\)).
출력 형식
\(n\)번 계단까지 오르는 방법의 수를 \(10^9+7\)로 나눈 나머지로 출력한다.
예제 1
입력
4
2
1 2
출력
5
예제 2
입력
5
1
2
출력
0
예제 3
입력
6
3
1 3 5
출력
8
문제 정보
riseoj 작성
출처 RiseOJ Basics
태그
평가 및 의견
Climbing Stairs with a Step Set
개별 의견
아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.
풀이 제출
Climbing Stairs with a Step Set
게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다.
로그인하고 제출하기