2016蓝桥杯省赛---java---A---6(寒假作业)
生活随笔
收集整理的這篇文章主要介紹了
2016蓝桥杯省赛---java---A---6(寒假作业)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目描述
現在小學的數學題目也不是那么好玩的。 看看這個寒假作業:□ + □ = □ □ - □ = □ □ × □ = □ □ ÷ □ = □(如果顯示不出來,可以參見【圖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就算兩種解法。(加法,乘法交換律后算不同的方案)你一共找到了多少種方案?請填寫表示方案數目的整數。 注意:你提交的應該是一個整數,不要填寫任何多余的內容或說明性文字。思路分析
遞歸版的java全排列+判斷條件是否滿足
代碼實現
package TEST;class Main{public static int[] a={1,2,3,4,5,6,7,8,9,10,11,12,13};public static int count = 0;public static void main(String[] args) {dfs(0);System.out.println(count);}//遞歸實現全排列(深度優先)public static void dfs(int k) {if (k == 12) {//如果是13個全部參與的話這里的k==12應該變為k==13if (judge())count++;return;// !!!一次全排列}for (int i = k;i<=12;i++) {int temp = a[i];a[i] = a[k];a[k] = temp;dfs(k+1);temp = a[i];a[i] = a[k];a[k] = temp;//因為修改是對唯一的數組做了修改,為了不影響后續的排列,//每一次會遞歸完成并回到這里時都要將交換復原}}//判斷是否符合public static boolean judge() {if (a[1] + a[2] == a[3] && a[4] - a[5] == a[6] && a[7] * a[8] == a[9]&& (a[10] / a[11] == a[12] && a[10] % a[11] == 0)) {// 必須判斷余數為零return true;} else {return false;}} }答案
64
總結
以上是生活随笔為你收集整理的2016蓝桥杯省赛---java---A---6(寒假作业)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 二战题材军事电视剧《空战群英》明年 1
- 下一篇: 卤味花生的做法 卤味花生简单做法