void burn() { leaf top; // while(true) { top=Q.min(); std::cout<<"____"<<top<<"____\n"; if(top.i==size-1 && top.j==size-1){ std::cout<<top.minsum<<std::endl; return; } array[top.i][top.j].visited=true; top.findneighbours(); int z; Q.removemin(); // std::cout<<"\nQueue...\n"; // Q.print(); // std::cout<<"############\n\n"; for(z=0;z<top.neighbours.size();++z) { top.neighbours[z].add(top.minsum); // std::cout<<" "<<top.neighbours[z]<<'\n'; Q.insert(top.neighbours[z]); } // int i, j; // for(i=0;i<5;++i){ // for(j=0;j<5;++j){ // std::cout<<array[i][j].visited<<" "; // } // std::cout<<"\n"; // } // std::cin.get(); burn(); // } }