填入0~9的數字。要求:連續的兩個數字不能相鄰。
(左右、上下、對角都算相鄰)
一共有多少種可能的填數方案?
請填寫表示方案數目的整數。
注意:你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。
我的思路是
1:先把這10個數進行排列,然後把排列後的數字存入乙個二維陣列b[3][4]中;
2:用int c[8][2] = ;來判斷是否滿足題目條件
3,把滿足的輸出來。
#include #include#include
using
namespace
std;
int a[10] = ;
int sum = 0
;int b[3][4
];void f()//
輸出每一種情況
cout
<}
cout
<}void
add()
;//上下左右加四個斜角,共八個方向
intx;
inty;
int nn = 1
;
for(int i=0;i<3;i++)
if(abs(b[i][j] - b[x][y])==1
)
}if(nn == 0
)
}if(nn == 0
)
}if(nn == 1
)
}void fun(int m,int n)//
組合,儲存到陣列中
else
}}int
main()
publicclass
main
,,,,,,,};//
上下左右加四個斜角,共八個方向
static
int count = 0;//
儲存所有情況
public
static
void
print()
system.
out.println();
}public
static boolean yuejie(int x,int
y)
public
static boolean aizhe()//
判斷這種方法可不可行}}
}}
return
true
; }
public
static
void fun(int
n)
return
; }
if(n==0
)
else}}
}public
static
void
main(string args)
}
答案:1580
藍橋杯真題 方格填數
方格填數 填入0 9的數字。要求 連續的兩個數字不能相鄰。左右 上下 對角都算相鄰 一共有多少種可能的填數方案?請填寫表示方案數目的整數。注意 你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。思路 明顯是一道dfs題 答案 1580 include using namespace std...
藍橋杯 方格填數
方格填數 如下的10個格仔 如果顯示有問題,也可以參看 圖1.jpg 填入0 9的數字。要求 連續的兩個數字不能相鄰。左右 上下 對角都算相鄰 一共有多少種可能的填數方案?請填寫表示方案數目的整數。注意 你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。include include in...
方格填數 藍橋杯
如下的10個格仔 如果顯示有問題,也可以參看 圖1.jpg 填入0 9的數字。要求 連續的兩個數字不能相鄰。左右 上下 對角都算相鄰 一共有多少種可能的填數方案?請填寫表示方案數目的整數。注意 你提交的應該是乙個整數,不要填寫任何多餘的內容或說明性文字。解 可以直接用全排列的方法解決,但是用dfs ...