蓝桥杯 第七届 Javac组第七题 搭积木

小明最近喜欢搭数字积木,
一共有10块积木,每个积木上有一个数字,0~9。

搭积木规则:
每个积木放到其它两个积木的上面,并且一定比下面的两个积木数字小。
最后搭成4层的金字塔形,必须用完所有的积木。

下面是两种合格的搭法:

   0
  1 2
 3 4 5
6 7 8 9

   0
  3 1
 7 5 2
9 8 6 4    

请你计算这样的搭法一共有多少种?

请填表示总数目的数字。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------如果你刚刚看过第六题 。。。亲这边建议您自己去做因为这也是暴力做法=-=

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

public class Main{
public static void main(String[] args) {
    int count=0;

//十层循环代表每个积木的数字数字是0~9
    for (int z =0; z<1; z++) {
    for (double a = 1; a <5; a++) {
        for (double b = 1; b < 5; b++) {
            for (double c = 1; c <10; c++) {
                for (double d = 1; d < 10; d++) {
                    for (double e = 1; e < 10; e++) {
                        for (double f = 1; f <10; f++) {
                            for (double g = 1; g < 10; g++) {
                                for (double h = 1; h < 10; h++) {
                                    for (double i = 1; i < 10; i++) {

//互不相等
                            if (a!=b&a!=c&a!=d&a!=e&a!=f&a!=g&a!=h&a!=i&a!=z&
                                    b!=c&b!=d&b!=e&b!=f&b!=g&b!=h&b!=i&b!=z&    
                                    c!=d&c!=e&c!=f&c!=g&c!=h&c!=i &b!=z&
                                    d!=e&d!=f&d!=g&d!=h&d!=i&d!=z&
                                    e!=f&e!=g&e!=h&e!=i&e!=z&
                                    f!=g&f!=h&f!=i&f!=z&
                                    g!=h&g!=i&g!=z&
                                    h!=i&h!=z&
                                    i!=z
                             //满足上面的比下面的两个小       
                                    &z<a&z<b&
                                    a<c&a<d&
                                    b<d&b<e&
                                    c<f&c<g&
                                    d<g&d<h&
                                    e<h&e<i
                                    
                            
                            ) {count++;
                                
                            }            
                                        
                                        
                                        
                                        
                                        
                                        
                                    }}}}}}}}}}

System.out.println(count);
}}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值