prvy
This commit is contained in:
parent
7bcfc31c4c
commit
fb9c572281
10
sk1a/main.c
10
sk1a/main.c
@ -15,11 +15,11 @@ void print_solution(char* matrix,int sz){
|
|||||||
|
|
||||||
int main(){
|
int main(){
|
||||||
char tmaze[SZ+1][SZ+1]={
|
char tmaze[SZ+1][SZ+1]={
|
||||||
"*x ",
|
"*x ",
|
||||||
" x ",
|
" xx ",
|
||||||
" x ",
|
" x ",
|
||||||
" x ",
|
" x ",
|
||||||
" ",
|
" ",
|
||||||
};
|
};
|
||||||
char maze[SZ*SZ];
|
char maze[SZ*SZ];
|
||||||
memset(maze,' ',SZ*SZ);
|
memset(maze,' ',SZ*SZ);
|
||||||
|
BIN
sk1a/main.o
BIN
sk1a/main.o
Binary file not shown.
68
sk1a/maze.c
68
sk1a/maze.c
@ -5,21 +5,79 @@
|
|||||||
|
|
||||||
int solve_maze(char* maze,int size) {
|
int solve_maze(char* maze,int size) {
|
||||||
int i = 0;
|
int i = 0;
|
||||||
|
int p, l, h, d = 0;
|
||||||
while(i != size*size-1){
|
while(i != size*size-1){
|
||||||
if (maze[i + 1] == ' ' && i != size - 1) {
|
if (maze[i + 1] == ' ' && i != size - 1 && l != 1) {
|
||||||
maze[i + 1] = '*';
|
maze[i + 1] = '*';
|
||||||
i++;
|
i++;
|
||||||
} else if (maze[i + size] == ' ' && i != size - 1) {
|
p = 0;
|
||||||
|
l = 0;
|
||||||
|
h = 0;
|
||||||
|
d = 0;
|
||||||
|
} else if (maze[i + size] == ' ' && i != size - 1 && h != 1) {
|
||||||
maze[i + size] = '*';
|
maze[i + size] = '*';
|
||||||
i = i + size;
|
i = i + size;
|
||||||
} else if (maze[i - 1] == ' ' && i != 0) {
|
p = 0;
|
||||||
|
l = 0;
|
||||||
|
h = 0;
|
||||||
|
d = 0;
|
||||||
|
} else if (maze[i - 1] == ' ' && i != 0 && p != 1) {
|
||||||
maze[i - 1] = '*';
|
maze[i - 1] = '*';
|
||||||
i--;
|
i--;
|
||||||
} else if (maze[i - size] == ' ' && i > size) {
|
p = 0;
|
||||||
|
l = 0;
|
||||||
|
h = 0;
|
||||||
|
d = 0;
|
||||||
|
} else if (maze[i - size] == ' ' && i > size && d != 1) {
|
||||||
maze[i - size] = '*';
|
maze[i - size] = '*';
|
||||||
i = i - size;
|
i = i - size;
|
||||||
|
p = 0;
|
||||||
|
l = 0;
|
||||||
|
h = 0;
|
||||||
|
d = 0;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
while(1){
|
||||||
|
|
||||||
|
if (maze[i + 1] == ' ' && i != size - 1 && l != 1) {
|
||||||
|
i++;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (maze[i + size] == ' ' && i != size - 1 && h != 1) {
|
||||||
|
i = i + size;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (maze[i - 1] == ' ' && i != 0 && p != 1) {
|
||||||
|
i--;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (maze[i - size] == ' ' && i > size && d != 1) {
|
||||||
|
i = i - size;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
p = 0;
|
||||||
|
l = 0;
|
||||||
|
h = 0;
|
||||||
|
d = 0;
|
||||||
|
if (maze[i + 1] == '*' && i != size - 1) {
|
||||||
|
maze[i] = ' ';
|
||||||
|
i++;
|
||||||
|
p = 1;
|
||||||
|
} else if (maze[i + size] == '*' && i != size - 1) {
|
||||||
|
maze[i] = ' ';
|
||||||
|
i = i + size;
|
||||||
|
d = 1;
|
||||||
|
} else if (maze[i - 1] == '*' && i != 0) {
|
||||||
|
maze[i] = ' ';
|
||||||
|
i--;
|
||||||
|
l = 1;
|
||||||
|
} else if (maze[i - size] == '*' && i > size) {
|
||||||
|
maze[i] = ' ';
|
||||||
|
i = i - size;
|
||||||
|
h = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
BIN
sk1a/maze.o
BIN
sk1a/maze.o
Binary file not shown.
BIN
sk1a/program
BIN
sk1a/program
Binary file not shown.
Loading…
Reference in New Issue
Block a user