-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCodes
114 lines (95 loc) · 2.62 KB
/
Codes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
var been = [[1,1,1,1,1,1,1,1,-1,1],
[1,1,1,1,1,1,1,1,1,1],
[1,1,1,1,1,1,1,1,1,1],
[1,1,1,1,1,1,1,1,1,1],
[1,1,1,1,1,1,1,1,1,1],
[1,1,1,1,1,1,1,1,1,1],
[1,1,1,1,1,1,1,1,1,1],
[1,1,1,1,1,1,1,1,1,1],
[1,1,1,1,1,1,1,1,1,1],
[1,1,1,1,1,1,1,1,1,1]]
// 0 - Barrier
// 1 - Road
// -1 - Finish
var labyrinth = [[0,0,0,0,0,0,0,0,-1,0],
[0,1,0,0,1,1,1,1,1,0],
[0,1,0,1,1,0,0,0,0,0],
[0,1,0,0,1,0,1,1,1,0],
[0,1,1,1,1,1,1,0,1,0],
[0,1,0,0,0,0,0,0,0,0],
[0,1,0,1,1,1,1,1,1,0],
[0,1,0,0,1,0,0,0,1,0],
[0,1,1,1,1,0,1,1,1,0],
[0,0,0,0,0,0,0,0,1,0]]
var x = 8
var y = 9
var z = 1
print("Your Car Starts To Journey From : Coordinate : \(x),\(y)")
for i in 0...1000{
if (labyrinth[y][x]==(-1)){
print("You arrived to designated location. Thanks for using us. -Artifical Intelligence")
break
}
if (y>0){
if (been[y - 1][x] < z && labyrinth[y - 1][x] != 0){
z = been[y - 1][x]
continue
}
}
if (x<9){
if (been[y][x+1]<z && labyrinth[y][x+1] != 0){
z = been[y][x+1]
continue
}
}
if (x>0){
if (been[y][x-1]<z && labyrinth[y][x-1] != 0){
z = been[y][x-1]
continue
}
}
if (y<9){
if (been[y + 1][x] < z && labyrinth[y + 1][x] != 0){
z = been[y + 1][x]
continue
}
}
if (y>0){
if (labyrinth[y - 1][x]<=1 && been[y - 1][x]==z) && labyrinth[y - 1][x] != 0{
been[y][x] += 1
y = y - 1
print("coordinate : \(x),\(y)")
continue
}
}
if (x<9){
if (labyrinth[y][x+1]<=1 && been[y][x+1]==z) && labyrinth[y][x+1] != 0{
been[y][x] += 1
x = x+1
print("coordinate : \(x),\(y)")
continue
}
}
if (x>0){
if (labyrinth[y][x-1]<=1 && been[y][x-1]==z) && labyrinth[y][x-1] != 0{
been[y][x] += 1
x = x-1
print("coordinate : \(x),\(y)")
continue
}
}
if (y<9){
if (labyrinth[y+1][x]<=1 && been[y+1][x]==z) && labyrinth[y + 1][x] != 0{
been[y][x] += 1
y = y+1
print("coordinate : \(x),\(y)")
continue
}
}
if (been[y][x] == z){
z = 100
}
}
print("Goodbye for now...")
//Cihan Alperen Bosnalı
//20 June 2017