-
Notifications
You must be signed in to change notification settings - Fork 0
/
5_permutations_post_pb.txt
51 lines (50 loc) · 3.02 KB
/
5_permutations_post_pb.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
0 1 3 4[2]
0 1 4[3][2]
0 2[1]4[3] -rra-> [3] 0 1 2 4 -pb-> 0 1 2 4 | 3 [SORTED] -rra-> 4 0 1 2 | 3 -pa-> 3 4 0 1 2 -ra x 2-> 0 1 2 3 4 [DONE]
0 2 4[1][3]
0 2 4[3][1]
0 3[2][1]4
0 4[2]3[1]
0 4[3][2][1]
[1]0 3 4[2]
[1]0 4[3][2]
[1][2]0 4 3 -- will cause problem --
[1][2]4 0 3 -pb-> 2 4 0 3 | 1 -!in_order->-!try_swap->-pb-> 4 0 3 | 2 1 -in_order-> //insert// -rra; pa-> 2 3 4 0 | 1 -pa-> 1 2 3 4 0 -rra-> [DONE]
[1][3]0 2 4
[1][3][2]0 4
1 4[3][2]0
[2]0 3 4[1]
[2]0 4[3][1] -try_pb->-ra; pb-> 4 3 1 2 | 0 -try_swap->-sa-> 3 4 1 2 | 0 //insert// -rax2; pa-> [DONE] (6 moves)
[2][1]0 4[3] -try_pb->
[2][1]4 0 3
[2][3]0 1 4
[2][3][1]0 4
2 4[1][3]0 -try_pb->-pb-> 4 1 3 0 | 2 -try_swap->-rra; sa-> 4 0 1 3 | 2 //insert// -rra; pa-> 2 3 4 0 1 -rra x 2-> [DONE] (7 moves)
2 4[3][1]0
[3]0 2 4[1]
[3]0 4[2][1]
[3][1]0 4[2] -pb-> 1 0 4 2 | 3 -!in_order->-!try_swap->-push_next_b->-rra; pb-> 0 1 4 | 2 3 //insert// -rrr; pa-> 3 4 0 1 | 2 -pa-> 2 3 4 0 1 -rra x2-> [DONE] (8 moves)
[3][1]0 4[2] -try_pb(for each pb, try_swap)->-ra; pb-> 0 4 2 3 | 1 -sa-> 4 0 2 3 | 1 //insert// -ra x2; pa-> 1 2 3 4 0 -rra-> [DONE] (7 moves)
3[1]4 0 2
[3][2]0 1 4
[3][2][1]0 4
3 4[1][2]0
3 4[2][1]0
4 0 2 3[1]
4 0 3[2][1]
4[1]0 3[2]
//4[1][3]0 2 -rra x2; pb-> 2 4 1 3 | 0 -rra x 2; pb-> 2 4 3 | 1 0 -sa; ra-> 2 3 4 | 1 0 -pb x 2-> [DONE] (10 moves)
//4[1][3]0 2 -pb-> 1 3 0 2 | 4 -!in_order->-!try_swap->-pb-> 3 0 2 | 1 4 -in_order-> //insert// -rra; pa-> 1 2 3 0 | 4 -ra; pa-> 4 0 1 2 3 -ra-> [DONE] (6 moves)
4[1][3]0 2 -try_pb->-ra; pb-> 3 0 2 4 | 1 -try_swap->-rra; sa-> 3 4 0 2 | 1 //insert// -rra; pa-> 1 2 3 4 0 -rra-> [DONE] (7 moves)
4[2]0 1 3 -try_pb->-pb-> 2 0 1 3 | 4 -try_swap->-rra; sa-> 2 3 0 1 | 4 //insert// -ra x2; pa-> 4 0 1 2 3 -ra-> [DONE] (7 moves)
//4[2][1]0 3 -ra-> [2][1] 0 3 4 -pb-> [1] 0 3 4 | 2 -!in_order->try_swap->-sa-> 0 1 3 4 | 2 //insert// -ra x2-> 3 4 0 1 | 2 -pa-> 2 3 4 0 1 -rra x 2-> [DONE] (8 moves)
//4[2][1]0 3 -pb-> [2][1] 0 3 | 4 -!in_order->!try_swap->--pb-> 1 0 3 | 2 4 -!in_order->sa-> 0 1 3 | 2 4 //insert// -rra; pa -> 2 3 0 1 | 4 --ra x 2; pa-> 4 0 1 2 3 -ra-> [DONE] (9 moves)
//4[2][1]0 3 -ra; pb x 2-> 0 3 4 | 1 2 -in_order-> //insert// -ra; pa-> 1 3 4 0 | 2 -ra pa -> 2 3 4 0 1 -rra x2-> [DONE] (9 moves)
4[2][1]0 3 -pb x 2-> 1 0 3 | 2 4 -!in_order->-sa-> 0 1 3 | 2 4 //insert// -rra; pa-> 2 3 0 1 | 4 -ra x2; pa-> 4 0 1 2 3 -ra->[DONE] (9 moves)
4[3][1][2]0
//4[3][2][1]0 -pb-> 3 2 1 0 | 4 -!in_order->!try_swap->--pb-> 2 1 0 | 3 4 -!in_order->sa-> 1 2 0 | 3 4 //insert// -ra; pa-> 3 0 1 2 -ra; pa-> 4 0 1 2 3 -ra-> [DONE] (8 moves)
//4[3][2][1]0 -ra; pb-> 2 1 0 4 | 3 -!in_order->!try_swap->--pb-> 1 0 4 | 2 3 -!in_order->-sa-> 0 1 4 | 2 3 //insert// -rra; pa-> 2 4 0 1 | 3 -ra; pa-> 3 4 0 1 2 -rra x2-> [DONE] (10 moves)
//4[3][2][1]0 -!try_pb(for each pb, try_swap)->-pb x2-> 2 1 0 | 3 4 -sa-> 1 2 0 | 3 4 //insert// -ra; pa-> 3 0 1 2 -ra; pa-> 4 0 1 2 3 -ra-> [DONE] (8 moves)
4[3][2][1]0 -pb; sa-> 2 3 1 0 | 4 -ra x2; sa-> 0 1 2 3 -pa-> 4 0 1 2 3 -ra-> [DONE] (7 moves)
[Legend]
[]: out of place in stack, meaning it is not bigger than the biggest previous one.