從1 9中選9個數字全部選到且不能重複選取

2022-08-17 04:54:18 字數 750 閱讀 9582

1.問題描述:

湊算式b      def

a + --- + ------- = 10

c      ghi

這個算式中a~i代表1~9的數字,不同的字母代表不同的數字。

比如:6+8/3+952/714 就是一種解法,

5+3/1+972/486 是另一種解法。

2.演算法思路:

這道題目剛開始看到,我是想到用for迴圈暴力,一想要寫9個for迴圈,立馬想放棄了。但其實不用這樣,只用寫5個for迴圈,將def和ghi看成乙個整體,設定變數a1,a2,a3,a4,a5,然後再for迴圈。迴圈完了,再呼叫函式isreaped(a1,a2,a3,a4,a5),判斷是否重複,不重複輸出即可。

3.**如下:

public class pchou}}

}}

}system.out.println("總數為:" + count);

}//判斷數是否重複

public static boolean isrepeaded(int a1, int a2, int a3, int a4, int a5)

//將這些數全部儲存在temp中

int temp = ;

//現在把所有的數都分離出來了,只要這幾個數不重複即可,關鍵在於怎麼判斷這些數在0-9且不重複

int flag = 0;

for(int i=0;i<8;i++)}}

if(flag ==0)else

}}

用敗者樹從N個數中選擇最大的k個數字

20 21 24 29 36 45 56 69 84 101 120 141 164 189 16 45 76 109 144 181 20 61 104 149 196 45 96 149 4 61 120 181 44 109 176 45 116 189 64 141 20 101 184 6...

從10個數字中取5個數的所有組合

哈,申請了這個blog好久也沒有在上面寫東西 太懶 今天回答了乙個問題覺得字挺多的,搬到這裡來。哈這個問題有點意思,我自認為小學的時候數學還可以哈哈,來討論一下。可以模擬手算的演算法 先簡化問題,從2 3問題開始 先排序1.2.3 取出1然後還需要再取乙個數字可以是2.可以是3這樣我們得到 1.2 ...

演算法筆記 從N個整數中選取K個數的最優方案

給定n個整數 可能有負數 從中選擇k個數,使得這k個數之和恰好等於乙個給定的整數x 如果有多種方案,選擇它們中元素平方和最大的乙個。資料保證這樣的方案唯一。例如,從4個整數 2,3,3,4 中選擇2個數,使它們的和為6,顯然有兩種方案與,其中平方和最大的方案為。解題思路 使用深度搜尋遍歷來實現,每次...