• 纸牌三角形


    原创 


    标题:纸牌三角形

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

      A
      9  6
      4     8
    3   7    5    2

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

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

    请你计算并提交该数字。

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

    题目描述旋转、镜像算同一种:

     

      1                  3                5

       2       6    ——旋转——>     4          2      同      6        4

    3      4      5             5       6         1           1        2       3

      

      1                  1

       2       6    ——镜像——>      6          2

    3      4      5                5       4        3

     

      3                  3

       4       2    ——镜像——>      2         4

    5      6      1               1       6        5

      5                  5

       6       4    ——镜像——>     4          6

    1      2     3                3       2         1

    由上可知一个满足条件的等边三角形加上本身一共算了6次,重复了5次,/6即可。

    全排列(https://www.cnblogs.com/chiweiming/p/9279858.html

    package EightProvince;
    import java.util.Scanner;
    class find{
        private int total=0;
        private int print[]=new int[10];
        private int book[]=new int[10];
        public void full(int step){
            if(step==10){    //产生一种排列
                int a=print[1]+print[2]+print[3]+print[4];
                int b=print[4]+print[5]+print[6]+print[7];
                int c=print[7]+print[8]+print[9]+print[1];
                if(a==b && b==c){
                    total++;
                }
            }
            for(int i=1;i<=9;i++){
                if(book[i]==0){    //未使用
                    book[i]=1;
                    print[step]=i;
                    full(step+1);
                    book[i]=0;
                    print[step]=0;
                }
            }
        }
        public void outPut(){
            System.out.println(total/6);
        }
    }
    public class two {
    
        public static void main(String[] args) {
            find f=new find();
            f.full(1);
            f.outPut();
        }
    
    }

    答案:144

    09:58:29

    2018-11-27

  • 相关阅读:
    游戏资源贴
    赠云风大侠
    微软ad域的初步认识
    WAMP 80端口被MicrosoftHTTPAPI/2.0占用的解决办法
    单点登录的一系列尝试及最终解决
    母版页缓存问题
    Vs2012如何创建数据库
    Request.QueryString 不能像使用方法那样使用不可调用
    将textbox中的光标移动到当前输入的文本后
    用户控件学习笔记
  • 原文地址:https://www.cnblogs.com/chiweiming/p/10024546.html
Copyright © 2020-2023  润新知