動物園
1293 ワード
質問する
に答える
説明:
縦横に2つのライオンがn節に並んでいて、ライオンは縦横に寄り添うことができません.
D[N][0]=N行未配置
D[N][1]=N番行の左側のみ
D[N][2]=N番行の右側のみ
D[N][0]=D[N][0]+D[N][1]+D[N][2](3種類可能)
D[N][1]=D[N][0]+D[N][2](1に入ると空または2に入ることができる).
D[N][2]=D[N][0]+D[N][1](2に入ると空または1に入ることができる).
コード#コード#
import java.util.Scanner;
public class Num15988 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[][] d = new int[n+1][3];
d[0][0] = 1;
for (int i=1; i<=n; i++) {
d[i][0] = d[i-1][0] + d[i-1][1] + d[i-1][2];
d[i][1] = d[i-1][0] + d[i-1][2];
d[i][2] = d[i-1][0] + d[i-1][1];
for (int j=0; j<3; j++) {
d[i][j] %= 9901;
}
}
System.out.println((d[n][0] + d[n][1] + d[n][2])%9901);
}
}
コードの説明
注意:
ソース:https://www.acmicpc.net/problem/1309
Reference
この問題について(動物園), 我々は、より多くの情報をここで見つけました https://velog.io/@dogit/백준-1309-동물원テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol