题目:
标题:纸牌三角形
A,2,3,4,5,6,7,8,9 共9张纸牌排成一个正三角形(A按1计算)。要求每个边的和相等。
下图就是一种排法(如有对齐问题,参看p1.png)。
这样的排法可能会有很多。
如果考虑旋转、镜像后相同的算同一种,一共有多少种不同的排法呢?
请你计算并提交该数字。
注意:需要提交的是一个整数,不要提交任何多余内容。
笨笨有话说:
感觉可以暴力破解哦。
麻烦的是,对每个排法还要算出它的旋转、镜像排法,看看有没有和历史重复。
歪歪有话说:
人家又不让你把所有情况都打印出来,只是要算种类数。
对于每个基本局面,通过旋转、镜像能造出来的新局面数目不是固定的吗?
这道题用暴力即可
代码:
public class 第三题2 {
public static void main(String[] args) {
int sum=0;
for (int a = 1; a <10; a++) {
for (int b = 1; b <10; b++) {
for (int c = 1; c <10; c++) {
for (int d = 1; d <10; d++) {
for (int e = 1; e <10; e++) {
for (int f = 1; f <10; f++) {
for (int g = 1; g <10; g++) {
for (int h = 1; h <10; h++) {
for (int i = 1; i <10; i++) {
if(a!=b&a!=c&a!=d&a!=e&a!=f&a!=g&a!=h&a!=i&
b!=c&b!=d&b!=e&b!=f&b!=g&b!=h&b!=i&
c!=d&c!=e&c!=f&c!=g&c!=h&c!=i&
d!=e&d!=f&d!=g&d!=h&d!=i&
e!=f&e!=g&e!=h&e!=i&
f!=g&f!=h&f!=i&
g!=h&g!=i&
h!=i&
(a+b+d+f)==(a+c+e+g)&& (a+b+d+f)==(f+h+i+g)&&(a+c+e+g)==(f+h+i+g)){
sum++;
}
}
}
}
}
}
}
}
}
}
//考虑旋转和镜像所以除6
System.out.println(sum/6);
}
}