時間限制: 1 s
空間限制: 128000 kb
題目等級 : ** gold
題解有乙個5×5的棋盤,上面有一些格仔被染成了黑色,其他的格仔都是白色,你的任務的對棋盤一些格仔進行染色,使得所有的黑色格仔能連成一塊,並且你染色的格仔數目要最少。讀入乙個初始棋盤的狀態,輸出最少需要對多少個格仔進行染色,才能使得所有的黑色格仔都連成一塊。(注:連線是指上下左右四個方向,如果兩個黑色格仔只共有乙個點,那麼不算連線)
輸入描述 input description
輸入包括乙個5×5的01矩陣,中間無空格,1表示格仔已經被染成黑色。
輸出描述 output description
輸出最少需要對多少個格仔進行染色
樣例輸入 sample input
樣例輸出 sample output
這個題是不是不能用bfs做呀?
#include#include50分 dfs 超時#include
using
namespace
std;
int ans=0x7fffffff
;bool vis[10][10],color[10][10],now[10][10
];int e[4][2]=,,,};
bool v[10][10
];int
cnt,fr,num;
struct
nodepoint[
30];
bool check(int nx,int
ny) }
}void dfs(int
step)
if(nx&&ny)break
; }
check(nx,ny);
if(cnt==step+fr)ans=min(ans,step);
for(int i=1;i<=num;i++)
}}char ch[10
];int
main()}}
dfs(0);
printf("%d
",ans);
}
Codevs 1049 棋盤染色
時間限制 1 s 空間限制 128000 kb 題目等級 gold 題解有乙個5 5的棋盤,上面有一些格仔被染成了黑色,其他的格仔都是白色,你的任務的對棋盤一些格仔進行染色,使得所有的黑色格仔能連成一塊,並且你染色的格仔數目要最少。讀入乙個初始棋盤的狀態,輸出最少需要對多少個格仔進行染色,才能使得所...
codevs1049 棋盤染色
codevs1049 棋盤染色 試題描述 有乙個5 5的棋盤,上面有一些格仔被染成了黑色,其他的格仔都是白色,你的任務的對棋盤一些格仔進行染色,使得所有的黑色格仔能連成一塊,並且你染色的格仔數目要最少。讀入乙個初始棋盤的狀態,輸出最少需要對多少個格仔進行染色,才能使得所有的黑色格仔都連成一塊。注 連...
1049 棋盤染色
時間限制 1 s 空間限制 128000 kb 題目等級 gold 題解檢視執行結果 有乙個5 5的棋盤,上面有一些格仔被染成了黑色,其他的格仔都是白色,你的任務的對棋盤一些格仔進行染色,使得所有的黑色格仔能連成一塊,並且你染色的格仔數目要最少。讀入乙個初始棋盤的狀態,輸出最少需要對多少個格仔進行染...