Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
N
nszw-solver
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
adc2019
nszw-solver
Commits
57afb03f
Commit
57afb03f
authored
Aug 25, 2019
by
makoto.nishizawa
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
delete comment
parent
b5163502
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
12 additions
and
12 deletions
+12
-12
router.hpp
router/router.hpp
+1
-1
solve
solve
+0
-0
solver.cpp
solver.cpp
+11
-11
No files found.
router/router.hpp
View file @
57afb03f
...
...
@@ -12,7 +12,7 @@
using
namespace
std
;
#define ROUND_LIMIT 8192//4096//32768 // Max=65534(=2^16-2)
#define PRINT_BOARD
//
#define PRINT_BOARD
//#define PRINT_SEARCH // for router debug
#define MAX_LINES 256
...
...
solve
View file @
57afb03f
No preview for this file type
solver.cpp
View file @
57afb03f
...
...
@@ -696,7 +696,7 @@ int move_along_line(int mino, int l,int dir,int check_num){
break
;
}
if
(
line_board
[
mino_x
+
block_data
[
mino
][
i
][
0
]
-
count
][
mino_y
+
block_data
[
mino
][
i
][
1
]]
==
l
&&
(
line_board
[
mino_x
+
block_data
[
mino
][
i
][
0
]
-
count
-
1
][
mino_y
+
block_data
[
mino
][
i
][
1
]]
==
0
||
line_board
[
mino_x
+
block_data
[
mino
][
i
][
0
]
-
count
-
1
][
mino_y
+
block_data
[
mino
][
i
][
1
]]
==
l
)
&&
put_data
[
mino_x
+
block_data
[
mino
][
i
][
0
]
-
count
-
1
][
mino_y
+
block_data
[
mino
][
i
][
1
]]
==
0
){
cout
<<
"continue"
<<
endl
;
//
cout <<"continue" << endl;
cout
<<
mino_x
+
block_data
[
mino
][
i
][
0
]
-
count
<<
" "
<<
mino_y
+
block_data
[
mino
][
i
][
1
]
<<
" "
<<
line_board
[
mino_x
+
block_data
[
mino
][
i
][
0
]
-
count
][
mino_y
+
block_data
[
mino
][
i
][
1
]]
<<
endl
;
cout
<<
mino_x
+
block_data
[
mino
][
i
][
0
]
-
count
-
1
<<
" "
<<
mino_y
+
block_data
[
mino
][
i
][
1
]
<<
" "
<<
line_board
[
mino_x
+
block_data
[
mino
][
i
][
0
]
-
count
-
1
][
mino_y
+
block_data
[
mino
][
i
][
1
]]
<<
endl
;
...
...
@@ -704,31 +704,31 @@ int move_along_line(int mino, int l,int dir,int check_num){
continue
;
}
flag
=
1
;
cout
<<
"cannot move x"
<<
endl
;
cout
<<
i
<<
" "
<<
check_num
<<
endl
;
//
cout << "cannot move x" << endl;
//
cout << i << " " << check_num << endl;
break
;
}
else
{
cout
<<
"pass x"
<<
endl
;
//
cout << "pass x" << endl;
}
if
(
line_board
[
mino_x
+
block_data
[
mino
][
i
][
0
]
-
count
][
mino_y
+
block_data
[
mino
][
i
][
1
]]
==
l
&&
(
line_board
[
mino_x
+
block_data
[
mino
][
i
][
0
]
-
count
-
1
][
mino_y
+
block_data
[
mino
][
i
][
1
]]
!=
0
&&
line_board
[
mino_x
+
block_data
[
mino
][
i
][
0
]
-
count
-
1
][
mino_y
+
block_data
[
mino
][
i
][
1
]]
!=
l
)){
flag
=
1
;
cout
<<
"break"
<<
endl
;
/*
cout << "break" << endl;
cout << mino_x+block_data[mino][i][0]-count << " " << mino_y+block_data[mino][i][1] << " " << line_board[mino_x+block_data[mino][i][0]-count][mino_y+block_data[mino][i][1]] <<endl;
cout << mino_x+block_data[mino][i][0]-count-1 << " " << mino_y+block_data[mino][i][1] << " " << line_board[mino_x+block_data[mino][i][0]-count-1][mino_y+block_data[mino][i][1]] <<endl;
break
;
*/
break
;
}
line_board
[
mino_x
+
block_data
[
mino
][
check_num
][
0
]
-
count
][
mino_y
+
block_data
[
mino
][
check_num
][
1
]]
=
0
;
}
if
(
flag
)
break
;
new_x
--
;
line_board
[
mino_x
+
block_data
[
mino
][
check_num
][
0
]
-
count
][
mino_y
+
block_data
[
mino
][
check_num
][
1
]]
=
0
;
cout
<<
"move left"
<<
endl
;
//
cout << "move left" << endl;
}
else
{
if
(
line_board
[
mino_x
+
block_data
[
mino
][
check_num
][
0
]][
mino_y
+
block_data
[
mino
][
check_num
][
1
]
-
count
]
!=
l
)
break
;
for
(
int
i
=
1
;
i
<=
4
;
i
++
){
if
(
mino_y
+
block_data
[
mino
][
i
][
1
]
-
count
<
1
){
flag
=
1
;
cout
<<
"out of grid y"
<<
endl
;
//
cout << "out of grid y" << endl;
break
;
}
//if(i==check_num) continue;
...
...
@@ -742,15 +742,15 @@ int move_along_line(int mino, int l,int dir,int check_num){
continue
;
}
flag
=
1
;
cout
<<
"can not move y"
<<
endl
;
//
cout << "can not move y" << endl;
cout
<<
i
<<
" "
<<
check_num
<<
endl
;
break
;
}
else
{
cout
<<
"pass"
<<
endl
;
//
cout << "pass" << endl;
}
if
(
line_board
[
mino_x
+
block_data
[
mino
][
i
][
0
]][
mino_y
+
block_data
[
mino
][
i
][
1
]
-
count
]
==
l
&&
(
line_board
[
mino_x
+
block_data
[
mino
][
i
][
0
]][
mino_y
+
block_data
[
mino
][
i
][
1
]
-
count
-
1
]
!=
0
&&
line_board
[
mino_x
+
block_data
[
mino
][
i
][
0
]][
mino_y
+
block_data
[
mino
][
i
][
1
]
-
count
-
1
]
!=
l
)){
flag
=
1
;
cout
<<
"break"
<<
endl
;
//
cout << "break" << endl;
break
;
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment