如圖所示六角形中,填入1~12的數字。
使得每條直線上的數字之和都相同。
圖中,已經替你填好了3個數字,請你計算星號位置所代表的數字是多少?
請通過瀏覽器提交答案,不要填寫多餘的內容。
答案為:10
解題思路:將1~12剩餘沒填入的數字放入乙個陣列中,對他進行全排列,並判斷每一種排列是否符合條件
**:
#include #define m 10
int judge(int *num);
void swap(int *a,int *b);
void allpos(int current,int *num);
int flat=0;
int main(void)
; allpos(1,num);
return 0;
}//檢查陣列是否符合條件,陣列中的值與圖形相結合
int judge(int *num)
//全排列
void allpos(int current,int *num)
if(current>=m-1||flat) return;
int i=0;
for(i=current;i
void swap(int *a,int *b)
藍橋杯 六角填數
如圖 1.png 所示六角形中,填入1 12的數字。使得每條直線上的數字之和都相同。陣列分配 2 4 5 6 7 8 9 10 11 12 圖中,已經替你填好了3個數字,請你計算星號位置所代表的數字是多少?請通過瀏覽器提交答案,不要填寫多餘的內容。簡單的列舉排列,只要提前將12個結點標號,來判斷六個...
藍橋杯試題 歷屆試題 六角填數
使得每條直線上的數字之和都相同。圖中,已經替你填好了3個數字,請你計算星號位置所代表的數字是多少?請通過瀏覽器提交答案,不要填寫多餘的內容。答案 將上面九個空由上到下,由左到右依次編號為a 0 a 8 那麼 代表就是a 3 用全排列對齊進行排列 include using namespace std...
六角填數 DFS
題目是這樣的 如圖 1.png 所示六角形中,填入1 12的數字。使得每條直線上的數字之和都相同。圖中,已經替你填好了3個數字,請你計算星號位置所代表的數字是多少?解法 將12個數字放置到12個位置中,深度搜尋,暴力列舉的方法每放置乙個數字,檢查之前所放置位置的數字是否出現重複當恰好放置12個數字並...