第八届蓝桥杯省赛真题--纸牌三角形

版权声明:本文为博主原创文章,未经博主允许不得转载。

一、问题描述

  A,2,3,4,5,6,7,8,9 共9张纸牌排成一个正三角形(A按1计算)。要求每个边的和相等。下图就是一种排法。
                     
  这样的排法可能会有很多。如果考虑旋转、镜像后相同的算同一种,一共有多少种不同的排法呢?请你计算并提交该数字。
  注意:需要提交的是一个整数,不要提交任何多余内容。

二、题目类型:结果填空、全排列

三、解题思路及代码

  今天状态不是很好,做题目的时候很焦躁。。。。

  这题目最野蛮的思路是:把图看成有9个空需要填充,如下图:

  每个空都有9种可能的数值,于是乎遍历所有可能,把9个数互不相等的并且每边之和相等的情况自增 1 。因为题目说到:考虑旋转、镜像后相同的算同一种。旋转的情况有3种,镜像的情况有2种,所以要把最终结果除以6,得出答案。

  代码如下(非常暴力,但一个结果填空题,能跑出结果就好,效率问题who care?):

 1 public class CardTriangle {
 2 
 3     public static void main(String[] args) {
 4         int count=0;
 5         for(int a=1; a<=9;a++) {
 6             for(int b=1; b<=9; b++) {
 7                 for(int c=1;c<=9;c++) {
 8                     for(int d=1;d<=9;d++) {
 9                         for(int e=1;e<=9;e++) {
10                             for(int f=1;f<=9;f++) {
11                                 for(int g=1; g<=9;g++) {
12                                     for(int h=1;h<=9;h++) {
13                                         for(int i=1;i<=9;i++) {
14                                             if(a!=b&&a!=c&&a!=d&&a!=e&&a!=f&&a!=g&&a!=h&&a!=i&&
15                                                 b!=c&&b!=d&&b!=e&&b!=f&&b!=g&&b!=h&&b!=i&&
16                                                 c!=d&&c!=e&&c!=f&&c!=g&&c!=h&&c!=i&&
17                                                 d!=e&&d!=f&&d!=g&&d!=h&&d!=i&&
18                                                 e!=f&&e!=g&&e!=h&&e!=i&&
19                                                 f!=g&&f!=h&&f!=i&&
20                                                 g!=h&&g!=i&&
21                                                 h!=i) {
22                                                 if((a+b+d+f)==(a+c+e+i)&&(a+c+e+i)==(f+g+h+i)) count++;
23                                             }
24                                         }
25                                     }
26                                 }
27                             }
28                         }
29                     }
30                 }
31             }
32         }
33         System.out.println(count/6);
34     }
35 }

四、反思与总结(祈祷)

  希望第十届蓝桥杯可以对我友好一点!

 

转载于:https://www.cnblogs.com/crush-u-1214/p/10505740.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值