algorithm/DP

이친수

아르비스 2016. 10. 10. 17:07

https://www.acmicpc.net/problem/2193


이친수 문제


이전 자리수 + [0] 인 경우와,

이전 자리수 + [1] 인 경우를 나눠서 계산함


import java.util.Scanner;


public class PINARY {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

int N = sc.nextInt();

long[][] dp = new long[N+1][2];

dp[1][0] = 0;

dp[1][1] = 1;

for (int i = 2; i < N+1; i++) {

dp[i][0] = dp[i-1][0] + dp[i-1][1];

dp[i][1] = dp[i-1][0];

}

System.out.println(dp[N][0] + dp[N][1]);

}

}