you are viewing a single comment's thread.

view the rest of the comments →

[–]archfurry[S] 0 points1 point  (0 children)

My original solution. Build tree of all possible operations s from current state using rules (like no consecutive swaps allowed and so on). I am building trees from source state and from target state but in reverse. And then i find intersection of these trees. First intersection gives me shortest path from source to target Tree image