import java.util.PriorityQueue;




class Node implements Comparable<Node>{

int F,G,H;

int x;

int y;

Node parent;

public int compareTo(Node a) {

if(this.F>a.F)

return 1;

else

return -1;

}

}



public class Enemy {

Node node;

PriorityQueue<Node>open;

PriorityQueue<Node>close;

Node startnode;

Enemy(){


    open=new PriorityQueue<Node>();


close=new PriorityQueue<Node>();

startnode=new Node();

startnode.G=0;

startnode.H=getH(x,y);

startnode.x=x;

startnode.y=y;

startnode.F=startnode.G+startnode.H;


}


int x,y;

char enemy='E';





void astar(){

open.add(startnode);


while(true){

node=open.poll();

close.add(node);

if(node.x==Packman.x && node.y== Packman.y){

System.out.println("찾음");

break;     //종료

}

System.out.println(node.x);

System.out.println(node.y);

Input_OpenNode(node);


if(open.peek()==null){

System.out.println("길없음");

System.exit(0); //길없음

}


}

}



void Input_OpenNode(Node node){

Node node2;


if(!Packman.isWall(Packman.arr[node.x][node.y+1])){

node2=node;

node2.y=y+1;

node2.G=node2.G+1;

open.add(node2);

}

if(!Packman.isWall(Packman.arr[node.x+1][node.y])){

node2=node;

node2.x=x+1;

node2.G=node2.G+1;

open.add(node2);

}

if(!Packman.isWall(Packman.arr[node.x][node.y-1])){              <<<<<<<<<<<<<<<<<<<<<<<<<<<<  이부분 참고로  Enemy 의 x y는 1 1 로 초기화를 했었음

node2=node;

node2.y=y-1;

node2.G=node2.G+1;

open.add(node2);

}

if(!Packman.isWall(Packman.arr[node.x-1][node.y])){               <<<<<<<<<<<<<<<<<<<<<<<<<  이부분

node2=node;

node2.x=x-1;

node2.G=node2.G+1;

open.add(node2);

}

}




void move(){


}








int getH(int x,int y){

return Math.abs(Packman.x-x)+Math.abs(Packman.y-y);


}







































void left(){


if(!Packman.isWall(Packman.arr[x][y-1])&& Packman.arr[x][y-1]!='E'){

    if(Packman.arr[x][y-1]=='*')

     Packman. arr[x][y]='*';

    else if(Packman.arr[x][y-1]==' ')

     Packman. arr[x][y]=' ';

    else if(Packman.arr[x][y-1]==Packman.packman)

     Packman. arr[x][y]='♬';

    Packman. arr[x][y-1]='E';

y--;






}


void right(){


if(!Packman.isWall(Packman.arr[x][y+1]) && Packman.arr[x][y+1]!='E'){



if(Packman.arr[x][y+1]=='*')

Packman.arr[x][y]='*';

else if(Packman.arr[x][y+1]==' ')

Packman. arr[x][y]=' ';

else if(Packman.arr[x][y+1]==Packman.packman)

Packman. arr[x][y]='♬';

Packman.arr[x][y+1]='E';

y++;

   

}


}



void down(){


if(!Packman.isWall(Packman.arr[x+1][y])&&Packman.arr[x+1][y]!='E'){

char a=Packman.arr[x][y]; 

if(Packman.arr[x+1][y]=='*')

Packman.arr[x][y]='*';

else if(Packman.arr[x+1][y]==' ')

Packman.arr[x][y]=' ';

else if(Packman.arr[x+1][y]==Packman.packman)

Packman. arr[x][y]='♬';





Packman. arr[x+1][y]='E';



x++;





}



}



void up(){


if(!Packman.isWall(Packman.arr[x-1][y])&&Packman.arr[x-1][y]!='E' ){    



if(Packman.arr[x-1][y]=='*')

Packman.arr[x][y]='*';

else if(Packman.arr[x-1][y]==' ')

Packman.arr[x][y]=' ';

else if(Packman.arr[x-1][y]==Packman.packman)

Packman.arr[x][y]='♬';

Packman. arr[x-1][y]='E';

x--;

} //위




}

}