zoukankan      html  css  js  c++  java
  • 第八届蓝桥杯java b组第二题

    标题:纸牌三角形

            A,2,3,4,5,6,7,8,9 共9张纸牌排成一个正三角形(A按1计算)。要求每个边的和相等。
            下图就是一种排法(如有对齐问题,参看p1.png)。

                  A
                 9 6
                4   8
               3 7 5 2

            这样的排法可能会有很多。

            如果考虑旋转、镜像后相同的算同一种,一共有多少种不同的排法呢?

            请你计算并提交该数字。

            注意:需要提交的是一个整数,不要提交任何多余内容。

    这题没什么好说的 暴力破解模型 将不同位置的数认为一个排列 然后中间的位置认为相等 然后三处有想好可换

    那么最后需要除2和除3

    import java.util.Stack;
    
    public class Test2 {
        private static int count=0;
        public static void main(String[] args) {
            Stack<Integer> stack=new Stack<Integer>();
            for(int i=1;i<=9;i++){
                stack.push(i);
                fun(stack);
                stack.pop();
            }
            System.out.println(count/2/3);
        }
    
        private static void fun(Stack<Integer> stack) {
            if(stack.size()==9){
                int A=stack.get(0);
                int B=stack.get(1);
                int C=stack.get(2);
                int D=stack.get(3);
                int E=stack.get(4);
                int F=stack.get(5);
                int G=stack.get(6);
                int H=stack.get(7);
                int I=stack.get(8);
                int ACEI=A+C+E+I;
                int ABDF=A+B+D+F;
                int FGHI=F+G+H+I;
                if(ACEI==ABDF&&ABDF==FGHI){
                    ++count;
                    System.out.printf("%d %d %d %d   %d %d %d %d   %d %d %d %d",A,B,D,F,A,C,E,I,F,G,H,I);
                    System.out.println();
                }
            }
            for(int j=1;j<=9;j++){
                if(!stack.contains(j)){
                    stack.push(j);
                    fun(stack);
                    stack.pop();
                }
            }
        }
    
    }
    View Code
    恐惧源于无知,代码改变世界
  • 相关阅读:
    MyBatis学习教程
    【转载】Spring MVC 整合 Freemarker
    Java高效编程之四【C语言结构的替代】
    String相关的问题
    接口与抽象类的区别
    Java Garbage Collection基础详解------Java 垃圾回收机制技术详解
    数据库事物、隔离等级及数据库锁机制
    hadoop 多表join:Map side join及Reduce side join范例
    Java IO设计模式彻底分析 (转载)
    傅里叶变换的智慧[转]
  • 原文地址:https://www.cnblogs.com/ad-zhou/p/8641787.html
Copyright © 2011-2022 走看看