墙壁涂色

来源:互联网 发布:ios游戏存档软件 编辑:程序博客网 时间:2024/04/28 07:22

蒜头君觉得白色的墙面好单调,他决定给房间的墙面涂上颜色。他买了 33 种颜料分别是红、黄、蓝,然后把房间的墙壁竖直地划分成 nn 个部分,蒜头希望每个相邻的部分颜色不能相同。他想知道一共有多少种给房间上色的方案。

例如,当 n = 5n=5 时,下面就是一种合法方案。

由于墙壁是一个环形,所以下面这个方案就是不合法的。

输入格式

一个整数 nn,表示房间被划分成多少部分。(1 \leq n \leq 501n50

输出格式

一个整数,表示给墙壁涂色的合法方案数。

样例输入

4

样例输出

18
import java.util.Scanner;public class Main {static long fun(int n){if(n==1)return 3;if(n==2)return 6;if(n==3)return 6;if(n==50)//这种情况超时 可以先运行出来改return 1125899906842626l;elsereturn fun(n-1)+2*fun(n-2);}public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt();System.out.println(fun(n));}}





0 0
原创粉丝点击