From e4e68357aa6502371ba0ef66278704a2cbf38549 Mon Sep 17 00:00:00 2001 From: royus Date: Mon, 16 Jul 2018 10:06:28 +0900 Subject: [PATCH] require_connect --- source/solver.c | 50 ++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 45 insertions(+), 5 deletions(-) diff --git a/source/solver.c b/source/solver.c index 43546c2..1791a75 100644 --- a/source/solver.c +++ b/source/solver.c @@ -1,5 +1,5 @@ /* solver.c */ -/* Last Change: 2018/07/09 (Mon) 15:54:41. */ +/* Last Change: 2018/07/16 (Mon) 10:05:50. */ #include /* #include */ @@ -8,7 +8,8 @@ /* #include */ /* #include */ -int board[8][72][72]; +int board[8][72][72]={}; +int avail[8][72][72]={}; int depth,height,width; int lines; //z,y,x @@ -91,11 +92,50 @@ int connected(int line){ return 0; } -int connectable(int linea,int lineb){ - //REQUIRED +int available(int startx,int starty, int startz){ + if(avail[startz][starty][startx]==-1) + return 1; + if(startx>0&&available(startx-1,starty,startz)) + return 1; + if(starty>0&&available(startx,starty-1,startz)) + return 1; + if(startz>0&&available(startx,starty,startz-1)) + return 1; + if(startx