티스토리 뷰
public class Main {
static long dp[];
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.next();
sc.close();
int length = str.length();
dp = new long[length + 1];
dp[0] = dp[1] = 1;
if(str.charAt(0) == '0')
System.out.println(0);
else if(str.charAt(length-1) == '0' && str.charAt(length-2) != '1' && str.charAt(length-2) != '2')
System.out.println(0);
else
for(int i = 2; i <= length; i++) {
int tmp = Integer.parseInt(str.charAt(i-1)+"");
if(tmp > 0) dp[i] = dp[i-1] % 1000000;
tmp += Integer.parseInt(str.charAt(i-2)+"")*10;
if(10 <= tmp && tmp <= 26)
dp[i] = (dp[i] + dp[i-2]) % 1000000;
}
System.out.println(dp[length]);
}
}
'algorithm' 카테고리의 다른 글
[DP] 11052 카드 구매하기 (0) | 2020.05.05 |
---|---|
다이나믹 프로그래밍 문제 정리 (0) | 2020.05.05 |
[DP] 9461 파도반수열 (0) | 2020.05.01 |
[DP] 2133 3*n 타일링문제 (0) | 2020.05.01 |
[dp] 1699 (0) | 2020.04.28 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Stack
- 인접리스트
- dfs
- react
- server side rendering
- 알고리즘
- stackframe
- javascript
- 동적프로그래밍
- 이진탐색
- 병행프로세스
- client side rendering
- 구조체
- 최단경로
- 자료구조
- 세마포어
- 스텍
- C++
- 소프트웨어
- 재귀함수
- 인접행렬
- 퀵정렬
- 운영체제
- 입출력장치
- 클래스
- 배열
- 교착상태
- C
- BFS
- Java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함