mirror of
https://github.com/DavidGailleton/42-Push_Swap.git
synced 2026-01-27 00:41:57 +00:00
finish to switch
This commit is contained in:
@@ -20,8 +20,8 @@ static int is_border_a(int value, t_stacks *stacks)
|
||||
if (!stacks->a)
|
||||
return (1);
|
||||
tmp = assign_stack(stacks, 'a');
|
||||
if ((value < tmp->value && check_order(tmp))
|
||||
|| (value > tmp->value && value > tmp->previous->value
|
||||
if ((value < tmp->index && check_order(tmp))
|
||||
|| (value > tmp->index && value > tmp->previous->index
|
||||
&& check_order(stacks->a)))
|
||||
return (1);
|
||||
return (0);
|
||||
@@ -34,12 +34,12 @@ int move_left_to_right(int value, t_stacks *stacks, int is_move)
|
||||
|
||||
i = 0;
|
||||
tmp = assign_stack(stacks, 'a');
|
||||
while (value > tmp->value && !is_move)
|
||||
while (value > tmp->index && !is_move)
|
||||
{
|
||||
tmp = tmp->next;
|
||||
i++;
|
||||
}
|
||||
while (value > stacks->a->value && is_move)
|
||||
while (value > stacks->a->index && is_move)
|
||||
ra(stacks);
|
||||
return (i);
|
||||
}
|
||||
@@ -51,12 +51,12 @@ int move_right_to_left(int value, t_stacks *stacks, int is_move)
|
||||
|
||||
tmp = assign_stack(stacks, 'a');
|
||||
i = 0;
|
||||
while (value < tmp->previous->value && !is_move)
|
||||
while (value < tmp->previous->index && !is_move)
|
||||
{
|
||||
tmp = tmp->previous;
|
||||
i++;
|
||||
}
|
||||
while (value < stacks->a->previous->value && is_move)
|
||||
while (value < stacks->a->previous->index && is_move)
|
||||
rra(stacks);
|
||||
return (i);
|
||||
}
|
||||
|
||||
@@ -28,7 +28,7 @@ static int path_to_end(t_stacks *stacks, int max_range, int range, char c)
|
||||
while (first_pass || tmp != start->previous)
|
||||
{
|
||||
first_pass = 0;
|
||||
if (in_range(tmp->value, max_range, range))
|
||||
if (in_range(tmp->index, max_range, range))
|
||||
tmp = start;
|
||||
tmp = tmp->previous;
|
||||
i++;
|
||||
@@ -50,7 +50,7 @@ static int path_to_start(t_stacks *stacks, int max_range, int range, char c)
|
||||
while (first_pass || tmp != start)
|
||||
{
|
||||
first_pass = 0;
|
||||
if (in_range(tmp->value, max_range, range))
|
||||
if (in_range(tmp->index, max_range, range))
|
||||
{
|
||||
tmp = start->previous;
|
||||
}
|
||||
@@ -76,12 +76,12 @@ void normal_move_path(t_stacks *stacks, t_tab *one_preset, int range)
|
||||
{
|
||||
if (wich_path(stacks, one_preset->max_range, range, 'b'))
|
||||
{
|
||||
while (!in_range(stacks->b->value, one_preset->max_range, range))
|
||||
while (!in_range(stacks->b->index, one_preset->max_range, range))
|
||||
rb(stacks);
|
||||
}
|
||||
else
|
||||
{
|
||||
while (!in_range(stacks->b->value, one_preset->max_range, range))
|
||||
while (!in_range(stacks->b->index, one_preset->max_range, range))
|
||||
{
|
||||
rrb(stacks);
|
||||
}
|
||||
@@ -97,14 +97,14 @@ int get_pre_move_b(t_stacks *stacks, t_tab *one_preset, int range)
|
||||
tmp = assign_stack(stacks, 'b');
|
||||
if (wich_path(stacks, one_preset->max_range, range, 'b'))
|
||||
{
|
||||
while (!in_range(tmp->value, one_preset->max_range, range))
|
||||
while (!in_range(tmp->index, one_preset->max_range, range))
|
||||
{
|
||||
i++;
|
||||
tmp = tmp->next;
|
||||
}
|
||||
}
|
||||
else
|
||||
while (!in_range(tmp->value, one_preset->max_range, range))
|
||||
while (!in_range(tmp->index, one_preset->max_range, range))
|
||||
{
|
||||
i++;
|
||||
tmp = tmp->previous;
|
||||
|
||||
@@ -81,7 +81,7 @@ void push_range_to_b(t_stacks *stacks, t_tab *one_preset, int range)
|
||||
path_rr_rrr(value, stacks, one_preset, range);
|
||||
}
|
||||
normal_move_path(stacks, one_preset, range);
|
||||
move_ra_rra(stacks->b->value, stacks);
|
||||
move_ra_rra(stacks->b->index, stacks);
|
||||
pa(stacks);
|
||||
put_in_order_ra_rra(stacks);
|
||||
one_preset->nb_in--;
|
||||
|
||||
@@ -21,13 +21,13 @@ int get_value_finded(t_stacks *stacks, t_tab *one_preset, int range)
|
||||
tmp = assign_stack(stacks, 'b');
|
||||
if (wich_path(stacks, one_preset->max_range, range, 'b'))
|
||||
{
|
||||
while (!in_range(tmp->value, one_preset->max_range, range))
|
||||
while (!in_range(tmp->index, one_preset->max_range, range))
|
||||
tmp = tmp->next;
|
||||
}
|
||||
else
|
||||
while (!in_range(tmp->value, one_preset->max_range, range))
|
||||
while (!in_range(tmp->index, one_preset->max_range, range))
|
||||
tmp = tmp->previous;
|
||||
value = tmp->value;
|
||||
value = tmp->index;
|
||||
return (value);
|
||||
}
|
||||
|
||||
|
||||
@@ -19,13 +19,13 @@ int get_first_lower(t_stack *first)
|
||||
int pass;
|
||||
|
||||
tmp = first;
|
||||
lower = tmp->value;
|
||||
lower = tmp->index;
|
||||
pass = 1;
|
||||
while (tmp != first || pass == 1)
|
||||
{
|
||||
pass = 0;
|
||||
if (lower > tmp->value)
|
||||
lower = tmp->value;
|
||||
if (lower > tmp->index)
|
||||
lower = tmp->index;
|
||||
tmp = tmp->next;
|
||||
}
|
||||
return (lower);
|
||||
@@ -43,9 +43,9 @@ int get_next_lower(t_stack *first, int old_lower)
|
||||
while (tmp != first || skip_first)
|
||||
{
|
||||
skip_first = 0;
|
||||
if (old_lower < tmp->value && tmp->value <= next_lower)
|
||||
if (old_lower < tmp->index && tmp->index <= next_lower)
|
||||
{
|
||||
next_lower = tmp->value;
|
||||
next_lower = tmp->index;
|
||||
if (next_lower == -2147483648)
|
||||
return (next_lower);
|
||||
}
|
||||
@@ -96,7 +96,7 @@ int get_number_in_range(int max_range, t_stack *a, int range)
|
||||
while (tmp != first || pass == 1)
|
||||
{
|
||||
pass = 0;
|
||||
if (in_range(tmp->value, max_range, range))
|
||||
if (in_range(tmp->index, max_range, range))
|
||||
nb_in++;
|
||||
tmp = tmp->next;
|
||||
}
|
||||
|
||||
@@ -20,13 +20,13 @@ static int get_max_number(t_stack *first)
|
||||
t_stack *a;
|
||||
|
||||
a = first;
|
||||
max = a->value;
|
||||
max = a->index;
|
||||
pass = 1;
|
||||
while (a != first || pass == 1)
|
||||
{
|
||||
pass = 0;
|
||||
if (max < a->value)
|
||||
max = a->value;
|
||||
if (max < a->index)
|
||||
max = a->index;
|
||||
a = a->next;
|
||||
}
|
||||
return (max);
|
||||
@@ -39,13 +39,13 @@ static int get_min_number(t_stack *first)
|
||||
int pass;
|
||||
|
||||
a = first;
|
||||
min = a->value;
|
||||
min = a->index;
|
||||
pass = 1;
|
||||
while (a != first || pass == 1)
|
||||
{
|
||||
pass = 0;
|
||||
if (min > a->value)
|
||||
min = a->value;
|
||||
if (min > a->index)
|
||||
min = a->index;
|
||||
a = a->next;
|
||||
}
|
||||
return (min);
|
||||
|
||||
500
arggs.txt
500
arggs.txt
@@ -1,500 +0,0 @@
|
||||
2274
|
||||
5953
|
||||
9628
|
||||
4802
|
||||
1713
|
||||
532
|
||||
8760
|
||||
4036
|
||||
3385
|
||||
724
|
||||
6261
|
||||
5005
|
||||
6245
|
||||
7492
|
||||
8651
|
||||
8907
|
||||
3466
|
||||
3704
|
||||
2575
|
||||
8020
|
||||
8413
|
||||
2057
|
||||
3114
|
||||
7857
|
||||
9276
|
||||
1990
|
||||
9674
|
||||
5660
|
||||
6539
|
||||
4399
|
||||
668
|
||||
8864
|
||||
5003
|
||||
3123
|
||||
6364
|
||||
4006
|
||||
9045
|
||||
699
|
||||
4978
|
||||
6518
|
||||
2192
|
||||
8226
|
||||
779
|
||||
2526
|
||||
3413
|
||||
9033
|
||||
964
|
||||
5810
|
||||
5444
|
||||
4586
|
||||
9250
|
||||
270
|
||||
9088
|
||||
6923
|
||||
2094
|
||||
3090
|
||||
7384
|
||||
9226
|
||||
713
|
||||
280
|
||||
6308
|
||||
6619
|
||||
2430
|
||||
734
|
||||
5024
|
||||
9322
|
||||
2423
|
||||
8611
|
||||
155
|
||||
702
|
||||
1433
|
||||
1948
|
||||
5891
|
||||
4065
|
||||
4449
|
||||
8391
|
||||
8829
|
||||
2343
|
||||
4436
|
||||
451
|
||||
4472
|
||||
6897
|
||||
4262
|
||||
9737
|
||||
6251
|
||||
2514
|
||||
6343
|
||||
2328
|
||||
8502
|
||||
1934
|
||||
7367
|
||||
1746
|
||||
8162
|
||||
4089
|
||||
4874
|
||||
652
|
||||
6940
|
||||
1076
|
||||
215
|
||||
108
|
||||
3560
|
||||
8249
|
||||
6324
|
||||
14
|
||||
9897
|
||||
1441
|
||||
1172
|
||||
3584
|
||||
5009
|
||||
9067
|
||||
8978
|
||||
1204
|
||||
749
|
||||
4872
|
||||
3071
|
||||
35
|
||||
5018
|
||||
2861
|
||||
9358
|
||||
4716
|
||||
1370
|
||||
7683
|
||||
1861
|
||||
5160
|
||||
1929
|
||||
3513
|
||||
2625
|
||||
8538
|
||||
1490
|
||||
2436
|
||||
4327
|
||||
1695
|
||||
8245
|
||||
1266
|
||||
2093
|
||||
3253
|
||||
5279
|
||||
3208
|
||||
8101
|
||||
3544
|
||||
4822
|
||||
6651
|
||||
2720
|
||||
8036
|
||||
5182
|
||||
5725
|
||||
3941
|
||||
1809
|
||||
8557
|
||||
9594
|
||||
2812
|
||||
2071
|
||||
6305
|
||||
6922
|
||||
5041
|
||||
5203
|
||||
7080
|
||||
543
|
||||
4898
|
||||
6557
|
||||
2769
|
||||
9649
|
||||
557
|
||||
181
|
||||
2715
|
||||
4257
|
||||
7401
|
||||
5069
|
||||
1431
|
||||
6502
|
||||
122
|
||||
3034
|
||||
8791
|
||||
6630
|
||||
3182
|
||||
585
|
||||
5795
|
||||
7750
|
||||
4685
|
||||
9686
|
||||
9297
|
||||
2745
|
||||
2216
|
||||
4625
|
||||
8904
|
||||
3797
|
||||
3450
|
||||
6465
|
||||
8292
|
||||
2051
|
||||
9244
|
||||
8214
|
||||
1467
|
||||
1293
|
||||
7551
|
||||
4098
|
||||
5142
|
||||
8874
|
||||
8627
|
||||
917
|
||||
5445
|
||||
2970
|
||||
3622
|
||||
9372
|
||||
7902
|
||||
6409
|
||||
443
|
||||
8410
|
||||
8827
|
||||
7007
|
||||
9790
|
||||
2694
|
||||
3950
|
||||
3847
|
||||
9423
|
||||
9873
|
||||
3221
|
||||
1538
|
||||
7300
|
||||
773
|
||||
6891
|
||||
4542
|
||||
2475
|
||||
5294
|
||||
4132
|
||||
853
|
||||
7174
|
||||
8971
|
||||
730
|
||||
5175
|
||||
8878
|
||||
1174
|
||||
2126
|
||||
1723
|
||||
425
|
||||
272
|
||||
573
|
||||
7559
|
||||
6543
|
||||
571
|
||||
3270
|
||||
5285
|
||||
1874
|
||||
9419
|
||||
2632
|
||||
8142
|
||||
6450
|
||||
4853
|
||||
7120
|
||||
3237
|
||||
2870
|
||||
6133
|
||||
7853
|
||||
4229
|
||||
3921
|
||||
6121
|
||||
5671
|
||||
2556
|
||||
4103
|
||||
2649
|
||||
225
|
||||
4766
|
||||
153
|
||||
2195
|
||||
1087
|
||||
2765
|
||||
9591
|
||||
7869
|
||||
1528
|
||||
8099
|
||||
6100
|
||||
3503
|
||||
3580
|
||||
4393
|
||||
918
|
||||
9178
|
||||
3833
|
||||
6052
|
||||
5807
|
||||
9313
|
||||
4772
|
||||
5547
|
||||
9927
|
||||
7905
|
||||
1055
|
||||
7901
|
||||
2721
|
||||
9093
|
||||
9152
|
||||
2804
|
||||
8010
|
||||
9168
|
||||
9818
|
||||
5828
|
||||
7545
|
||||
9461
|
||||
7856
|
||||
3974
|
||||
4460
|
||||
6571
|
||||
9312
|
||||
7606
|
||||
9400
|
||||
916
|
||||
4941
|
||||
535
|
||||
5383
|
||||
57
|
||||
7261
|
||||
5404
|
||||
7100
|
||||
7930
|
||||
6601
|
||||
8692
|
||||
1010
|
||||
4028
|
||||
1975
|
||||
895
|
||||
1036
|
||||
7428
|
||||
4078
|
||||
884
|
||||
8655
|
||||
9431
|
||||
4878
|
||||
4736
|
||||
6513
|
||||
299
|
||||
3891
|
||||
5361
|
||||
8780
|
||||
6243
|
||||
9994
|
||||
9279
|
||||
6340
|
||||
2733
|
||||
1738
|
||||
2288
|
||||
8161
|
||||
1006
|
||||
8620
|
||||
6652
|
||||
3735
|
||||
4890
|
||||
8988
|
||||
9334
|
||||
8858
|
||||
6661
|
||||
883
|
||||
3781
|
||||
5731
|
||||
6455
|
||||
4520
|
||||
6165
|
||||
7355
|
||||
6124
|
||||
4434
|
||||
193
|
||||
3016
|
||||
1665
|
||||
9676
|
||||
466
|
||||
4338
|
||||
8328
|
||||
8340
|
||||
3390
|
||||
9925
|
||||
6080
|
||||
7472
|
||||
7235
|
||||
9350
|
||||
5320
|
||||
7411
|
||||
8935
|
||||
296
|
||||
4366
|
||||
7912
|
||||
444
|
||||
5380
|
||||
4521
|
||||
1739
|
||||
325
|
||||
5717
|
||||
3142
|
||||
1613
|
||||
1379
|
||||
5722
|
||||
4418
|
||||
5289
|
||||
2962
|
||||
9291
|
||||
9577
|
||||
6126
|
||||
491
|
||||
5376
|
||||
9830
|
||||
542
|
||||
2795
|
||||
8879
|
||||
4467
|
||||
8007
|
||||
3738
|
||||
9390
|
||||
9249
|
||||
4233
|
||||
1043
|
||||
2230
|
||||
4903
|
||||
6722
|
||||
564
|
||||
7691
|
||||
2687
|
||||
1235
|
||||
7372
|
||||
9575
|
||||
9351
|
||||
7656
|
||||
2188
|
||||
4395
|
||||
5537
|
||||
9645
|
||||
8187
|
||||
3769
|
||||
1265
|
||||
5084
|
||||
9293
|
||||
1065
|
||||
5241
|
||||
326
|
||||
1254
|
||||
6004
|
||||
8062
|
||||
464
|
||||
9248
|
||||
8374
|
||||
1896
|
||||
3058
|
||||
9678
|
||||
8972
|
||||
7061
|
||||
5097
|
||||
1081
|
||||
5506
|
||||
3557
|
||||
3615
|
||||
405
|
||||
9215
|
||||
7999
|
||||
8554
|
||||
9931
|
||||
5462
|
||||
424
|
||||
1053
|
||||
9190
|
||||
4011
|
||||
5337
|
||||
8294
|
||||
7753
|
||||
8587
|
||||
4177
|
||||
8631
|
||||
9573
|
||||
1589
|
||||
7757
|
||||
503
|
||||
9452
|
||||
845
|
||||
6069
|
||||
5384
|
||||
5653
|
||||
4196
|
||||
2938
|
||||
9739
|
||||
2428
|
||||
3049
|
||||
2069
|
||||
3694
|
||||
6712
|
||||
212
|
||||
5546
|
||||
9061
|
||||
9472
|
||||
9749
|
||||
9973
|
||||
6476
|
||||
4332
|
||||
5889
|
||||
3356
|
||||
323
|
||||
5509
|
||||
486
|
||||
7558
|
||||
4757
|
||||
1255
|
||||
596
|
||||
8610
|
||||
703
|
||||
5264
|
||||
4798
|
||||
7932
|
||||
Reference in New Issue
Block a user