package b;
class Node {
int x;
int y;
int s;
Node r;
Node d;
Node pre;
Node next;
boolean br;
boolean bd;
public Node() {
}
public Node(int x, int y, int s) {
super();
this.x = x;
this.y = y;
this.s = s;
}
public Node(int x, int y, int s, Node r, Node d) {
this.x = x;
this.y = y;
this.s = s;
this.r = r;
this.d = d;
}
}
public class b {
public static void main(String[] args) {
boolean flag = true;
Node nsz[][] = {
{ new Node(1, 1, 1), new Node(1, 2, 2), new Node(1, 3, 3),
new Node(1, 4, 4), new Node(1, 5, 5) },
{ new Node(2, 1, 2), new Node(2, 2, 3), new Node(2, 3, 4),
new Node(2, 4, 5), new Node(2, 5, 6) },
{ new Node(3, 1, 3), new Node(3, 2, 4), new Node(3, 3, 5),
new Node(3, 4, 6), new Node(3, 5, 7) },
{ new Node(4, 1, 4), new Node(4, 2, 5), new Node(4, 3, 6),
new Node(4, 4, 7), new Node(4, 5, 8) } };
nsz[0][0].r = nsz[0][1];
nsz[0][0].d = nsz[1][0];
nsz[0][1].r = nsz[0][2];
nsz[0][1].d = nsz[1][1];
nsz[0][2].r = nsz[0][3];
nsz[0][2].d = nsz[1][2];
nsz[0][3].r = nsz[0][4];
nsz[0][3].d = nsz[1][3];
nsz[0][4].r = null;
nsz[0][4].d = nsz[1][4];
nsz[1][0].r = nsz[1][1];
nsz[1][0].d = nsz[2][0];
nsz[1][1].r = nsz[1][2];
nsz[1][1].d = nsz[2][1];
nsz[1][2].r = nsz[1][3];
nsz[1][2].d = nsz[2][2];
nsz[1][3].r = nsz[1][4];
nsz[1][3].d = nsz[2][3];
nsz[1][4].r = null;
nsz[1][4].d = nsz[2][4];
nsz[2][0].r = nsz[2][1];
nsz[2][0].d = nsz[3][0];
nsz[2][1].r = nsz[2][2];
nsz[2][1].d = nsz[3][1];
nsz[2][2].r = nsz[2][3];
nsz[2][2].d = nsz[3][2];
nsz[2][3].r = nsz[2][4];
nsz[2][3].d = nsz[3][3];
nsz[2][4].r = null;
nsz[2][4].d = nsz[3][4];
nsz[3][0].r = nsz[3][1];
nsz[3][0].d = null;
nsz[3][1].r = nsz[3][2];
nsz[3][1].d = null;
nsz[3][2].r = nsz[3][3];
nsz[3][2].d = null;
nsz[3][3].r = nsz[3][4];
nsz[3][3].d = null;
nsz[3][4].r = null;
nsz[3][4].d = null;
Node temp = null;
int road = 0;
temp = nsz[0][0];
while (flag) {
if (temp.r != null&&!temp.br) {
temp.next = temp.r;
temp.r.pre = temp;
temp = temp.r;
temp.br=true;
} else if (temp.d != null&&!temp.bd) {
temp.next = temp.d;
temp.d.pre = temp;
temp = temp.d;
temp.bd=true;
}else if(temp.pre!=null){
temp=temp.pre;
}
if (temp.s == 8) {
road = road + 1;
flag = false;
System.out.println(road + " --------------road");
}
}
}
}