JAVA面试编程题

有4个彩色的立方体。立方体的6个面,每面都涂上了1种颜色。一共有4种颜色,蓝色(B),红色(R),绿色(G)和黄色(Y)。立方体的6个面称为前(front)、后(back)、左(left)、右(right)、上(top)、下(bottom)。

这4个立方体的颜色排列为:

编号    front    back     left     right    top     bottom

1       R      B        G      Y       B       Y

2       R      G        G      Y       B       B

3       Y      B        R      G       Y       R

4       Y      G        B      R       R       R

请将这4个立方体重叠摆放成为一个立柱,这个立柱有4个侧面,要求每个侧面都有4种颜色。

 

代码:

package com.joyleft.client;

public class ShowColor {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        String[][] color={
                {"R","B","G","Y","B","Y"},
                {"R","G","G","Y","B","B"},
                {"Y","B","R","G","Y","R"},
                {"Y","G","B","R","R","R"},
        };
        int count=0;
        int AllCount=0;
        for (int i = 0; i < color[0].length; i++) {
            for (int j = 0; j < color[1].length; j++) {
                for (int j2 = 0; j2 < color[2].length; j2++) {
                    for (int k = 0; k < color[3].length; k++) {
                        if(!color[0][i].equals(color[1][j])&&!color[0][i].equals(color[2][j2])&&!color[0][i].equals(color[3][k])){
                            if(!color[1][j].equals(color[2][j2])&&!color[1][j].equals(color[3][k])){
                                if(!color[2][j2].equals(color[3][k])){
                                    System.out.println(count+1+":"+color[0][i]+" "+color[1][j]+" "+color[2][j2]+" "+color[3][k]);
                                    count++;
                                }
                            }
                        }       
                        AllCount++;
                    }
                }
            }
        }
    System.out.println("一共有"+count+"种方法");   
    System.out.println("一共执行了"+AllCount+"步");
    }

}

结果

一共有130种方法
一共执行了1296步

1:R G Y B
2:R G B Y
3:R G Y B
4:R G Y B
5:R G B Y
6:R G Y B
7:R Y B G
8:R Y G B
9:R B Y G
10:R B G Y
11:R B Y G
12:R B Y G
13:R B G Y
14:R B Y G
15:B R Y G
16:B R G Y
17:B R Y G
18:B G Y R
19:B G Y R
20:B G Y R
21:B G R Y
22:B G Y R
23:B G Y R
24:B G Y R
25:B G R Y
26:B G Y R
27:B G Y R
28:B G Y R
29:B G R Y
30:B G Y R
31:B G Y R
32:B G Y R
33:B G R Y
34:B Y R G
35:B Y G R
36:B Y G R
37:B Y G R
38:B Y R G
39:G R Y B
40:G R B Y
41:G R Y B
42:G Y B R
43:G Y B R
44:G Y B R
45:G Y R B
46:G Y R B
47:G B Y R
48:G B Y R
49:G B Y R
50:G B R Y
51:G B Y R
52:G B Y R
53:G B Y R
54:G B R Y
55:G B Y R
56:G B Y R
57:G B Y R
58:G B R Y
59:G B Y R
60:G B Y R
61:G B Y R
62:G B R Y
63:Y R B G
64:Y R G B
65:Y G B R
66:Y G B R
67:Y G B R
68:Y G R B
69:Y G R B
70:Y G B R
71:Y G B R
72:Y G B R
73:Y G R B
74:Y G R B
75:Y B R G
76:Y B G R
77:Y B G R
78:Y B G R
79:Y B R G
80:Y B R G
81:Y B G R
82:Y B G R
83:Y B G R
84:Y B R G
85:B R Y G
86:B R G Y
87:B R Y G
88:B G Y R
89:B G Y R
90:B G Y R
91:B G R Y
92:B G Y R
93:B G Y R
94:B G Y R
95:B G R Y
96:B G Y R
97:B G Y R
98:B G Y R
99:B G R Y
100:B G Y R
101:B G Y R
102:B G Y R
103:B G R Y
104:B Y R G
105:B Y G
R
106:B Y G R
107:B Y G R
108:B Y R G
109:Y R B G
110:Y R G B
111:Y G B R
112:Y G B R
113:Y G B R
114:Y G R B
115:Y G R B
116:Y G B R
117:Y G B R
118:Y G B R
119:Y G R B
120:Y G R B
121:Y B R G
122:Y B G R
123:Y B G R
124:Y B G R
125:Y B R G
126:Y B R G
127:Y B G R
128:Y B G R
129:Y B G R
130:Y B R G

如果不对 请提醒下我,谢谢

评论 (6)
  1. avatar
    沙发
    YY 2010-08-04 01:25

    看不懂的路过~

  2. avatar
    板凳
    黄伟涛 2010-08-10 02:20

    真看不懂呀Hehe

  3. avatar
    地板
    卢松松 2010-08-16 01:23

    深深的晕了

  4. avatar
    4 楼
    番薯窝 2010-08-16 16:25

    真的很难哦

  5. avatar
    5 楼
    怡红公子 2010-08-28 16:51

    JAVA是真的不懂啊

  6. avatar
    6 楼
    妈咪语宝宝英语 2010-09-27 00:29

    文章写的不错,特来顶一下!!!