poj3414pots

//此题采用广搜,找到满足条件的最小步数 #include #include using namespace std; #define MAX 101 int v[MAX][MAX]; int A,B,C; bool flag; struct node{ int a,b; int op,pre; int l; }; void f(); int main() { int i=0,j=0; flag=false; for(i=0;i >A>>B>>C; f(); if(!flag) cout<<"impossible"< q,r; node *seq=new node[A*B*6]; int index=0; node s_node,cur_node; s_node.a=0; s_node.b=0; s_node.pre=-1; s_node.l=0; v[0][0]=1; q.push(s_node); while(!q.empty()) { cur_node=q.front(); q.pop(); node ext_node,t_node; for(i=0;i<6;i++) { cur_node.op=i; // copy_node(cur_node,seq[index++]); t_node.a=cur_node.a; t_node.b=cur_node.b; if(!op(t_node,i)) continue; ext_node=t_node; if((ext_node.a==C) || (ext_node.b==C)) { flag=true; ext_node.pre=index-1; int l=cur_node.l+1; cout< < -1;j--) { if(rel[j]==0) cout<<"FILL(1)"<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值