寒假作业.java

package A类有价值的回顾的;

/*0 1 2 
 *3 4 5
 *6 7 8
 *9 10 11
 * 
 */
public class 寒假作业 {
    public static boolean[] a = new boolean[14];//biaoji 1-13
    public static int[] c = new int[12];
    public static int m = 0;

    public static boolean fa(int b){
        //不是b==2,这是进入下一层进行判断的 
        if(b == 3 && c[0] + c[1] != c[2]) return false; 
        if(b == 6 && c[3] - c[4] != c[5]) return false;
        if(b == 9 && c[6] * c[7] != c[8]) return false;
        if(b == 12 && c[9] != c[10]*c[11]) return false;
                     //c[9] / c[10] != c[11]是不对的,的确能整除时是可以的,但是像11/8 = 1也是相等的,没有普遍性
        return true;
    }
    public static void f(int b){

        if(fa(b) == false) return;
        if(b == 12){
            for(int j=0;j<c.length;j++){
                System.out.print(c[j]+" ");
                if(j%3==2)
                    System.out.println();
            }
            m++;
            System.out.println("===========");
            return;
        }

        for(int i=1;i<=13;i++){
            if(a[i] == false){
                a[i] = true;
                c[b] = i;
                f(b+1); 
                c[b] = 0;
                a[i] = false;
            }

        }

    }

    public static void main(String[] args){

        f(0);
        System.out.println(m);
    }
}

/*
 * 寒假作业
现在小学的数学题目也不是那么好玩的。 
看看这个寒假作业:
□ + □ = □ 
□ - □ = □ 
□ × □ = □ 
□ ÷ □ = □
(如果显示不出来,可以参见【图1.jpg】)
每个方块代表1~13中的某一个数字,但不能重复。 
比如: 
6 + 7 = 13 
9 - 8 = 1 
3 * 4 = 12 
10 / 2 = 5
以及: 
7 + 6 = 13 
9 - 8 = 1 
3 * 4 = 12 
10 / 2 = 5
就算两种解法。(加法,乘法交换律后算不同的方案)
你一共找到了多少种方案?
 */


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值