mirror of
https://github.com/DavidGailleton/42-Push_Swap.git
synced 2026-01-27 08:41:58 +00:00
need to fix
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -61,7 +61,6 @@ dkms.conf
|
|||||||
push_swap
|
push_swap
|
||||||
checker
|
checker
|
||||||
checker_linux
|
checker_linux
|
||||||
playtest.sh
|
|
||||||
|
|
||||||
# File obj
|
# File obj
|
||||||
obj/
|
obj/
|
||||||
|
|||||||
3
Makefile
3
Makefile
@@ -39,7 +39,8 @@ CHECKER_FILES = check_error.c verif_flag.c verif_is_digit.c verif_overflow.c ver
|
|||||||
|
|
||||||
STACK_UTILS = push.c rev_rotate.c rotate.c stack_add.c stack_remove.c stacks_len.c swap.c
|
STACK_UTILS = push.c rev_rotate.c rotate.c stack_add.c stack_remove.c stacks_len.c swap.c
|
||||||
|
|
||||||
MEDIUM_ALGO = utils_medium.c utils_struct_tab.c utils_medium_two.c sort_utils.c sort_utils_two.c medium_algo.c
|
MEDIUM_ALGO = utils_medium.c utils_struct_tab.c utils_medium_two.c sort_utils.c sort_utils_two.c medium_algo.c \
|
||||||
|
sort_utils_tree.c
|
||||||
|
|
||||||
COMPLEX_ALGO = radix.c
|
COMPLEX_ALGO = radix.c
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
#include "push_swap.h"
|
#include "push_swap.h"
|
||||||
#include "medium_headers.h"
|
#include "medium_headers.h"
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
|
#include <stdio.h>
|
||||||
static int path_to_end(t_stacks *stacks, int max_range, int range, char c)
|
static int path_to_end(t_stacks *stacks, int max_range, int range, char c)
|
||||||
{
|
{
|
||||||
t_stack *tmp;
|
t_stack *tmp;
|
||||||
@@ -95,6 +95,7 @@ void bucket_algo(t_stacks *stacks, t_tab *preset, int range)
|
|||||||
tmp = preset;
|
tmp = preset;
|
||||||
while(stacks->a)
|
while(stacks->a)
|
||||||
pb(stacks);
|
pb(stacks);
|
||||||
|
//stacks->print = 0;
|
||||||
while (preset)
|
while (preset)
|
||||||
{
|
{
|
||||||
push_range_to_b(stacks, preset, range);
|
push_range_to_b(stacks, preset, range);
|
||||||
@@ -106,7 +107,5 @@ void bucket_algo(t_stacks *stacks, t_tab *preset, int range)
|
|||||||
free(preset);
|
free(preset);
|
||||||
preset = tmp;
|
preset = tmp;
|
||||||
}
|
}
|
||||||
while (stacks->b)
|
|
||||||
pa(stacks);
|
|
||||||
return ;
|
return ;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,6 +12,22 @@
|
|||||||
|
|
||||||
#include "push_swap.h"
|
#include "push_swap.h"
|
||||||
#include "medium_headers.h"
|
#include "medium_headers.h"
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
static int move_next(t_stack *tmp, int value)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
|
i = 0;
|
||||||
|
if (tmp->previous->value < value)
|
||||||
|
return (70000);
|
||||||
|
while (tmp->value < value)
|
||||||
|
{
|
||||||
|
tmp = tmp->next;
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
return (i);
|
||||||
|
}
|
||||||
|
|
||||||
static int number_move_reverse(t_stacks *stacks, int value, char start_end)
|
static int number_move_reverse(t_stacks *stacks, int value, char start_end)
|
||||||
{
|
{
|
||||||
@@ -22,11 +38,7 @@ static int number_move_reverse(t_stacks *stacks, int value, char start_end)
|
|||||||
tmp = stacks->a;
|
tmp = stacks->a;
|
||||||
if (start_end == 's')
|
if (start_end == 's')
|
||||||
{
|
{
|
||||||
while (tmp->value < value)
|
i = move_next(tmp, value);
|
||||||
{
|
|
||||||
tmp = tmp->next;
|
|
||||||
i++;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -40,7 +52,7 @@ static int number_move_reverse(t_stacks *stacks, int value, char start_end)
|
|||||||
return (i);
|
return (i);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int sort_path(t_stacks *stacks, int value)
|
int sort_path(t_stacks *stacks, int value)
|
||||||
{
|
{
|
||||||
int start_path;
|
int start_path;
|
||||||
int end_path;
|
int end_path;
|
||||||
@@ -75,10 +87,25 @@ static void sort_little_pile(t_stacks *stacks)
|
|||||||
|
|
||||||
void push_range_to_b(t_stacks *stacks, t_tab *one_preset, int range)
|
void push_range_to_b(t_stacks *stacks, t_tab *one_preset, int range)
|
||||||
{
|
{
|
||||||
|
int value;
|
||||||
|
int i;
|
||||||
|
|
||||||
|
i = 0;
|
||||||
while (one_preset->nb_in > 0)
|
while (one_preset->nb_in > 0)
|
||||||
{
|
{
|
||||||
|
if (i > 0)
|
||||||
|
{
|
||||||
|
value = get_value_finded(stacks, one_preset, range);
|
||||||
|
opti_path(stacks, one_preset, range, value);
|
||||||
|
}
|
||||||
normal_move_path(stacks, one_preset, range);
|
normal_move_path(stacks, one_preset, range);
|
||||||
|
opti2_move_path(stacks, one_preset, range);
|
||||||
sort_little_pile(stacks);
|
sort_little_pile(stacks);
|
||||||
|
while (stacks->a->value > stacks->a->previous->value)
|
||||||
|
ra(stacks);
|
||||||
one_preset->nb_in--;
|
one_preset->nb_in--;
|
||||||
|
i++;
|
||||||
|
if (!check_order(stacks->a))
|
||||||
|
return ;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
119
algorithms/medium/sort_utils_tree.c
Normal file
119
algorithms/medium/sort_utils_tree.c
Normal file
@@ -0,0 +1,119 @@
|
|||||||
|
/* ************************************************************************** */
|
||||||
|
/* */
|
||||||
|
/* ::: :::::::: */
|
||||||
|
/* sort_utils_tree.c :+: :+: :+: */
|
||||||
|
/* +:+ +:+ +:+ */
|
||||||
|
/* By: mteriier <mteriier@student.42lyon.fr> +#+ +:+ +#+ */
|
||||||
|
/* +#+#+#+#+#+ +#+ */
|
||||||
|
/* Created: 2026/01/15 12:20:06 by mteriier #+# #+# */
|
||||||
|
/* Updated: 2026/01/15 12:20:07 by mteriier ### ########lyon.fr */
|
||||||
|
/* */
|
||||||
|
/* ************************************************************************** */
|
||||||
|
|
||||||
|
#include "push_swap.h"
|
||||||
|
#include "medium_headers.h"
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
void opti2_move_path(t_stacks *stacks, t_tab *one_preset, int range)
|
||||||
|
{
|
||||||
|
int value;
|
||||||
|
int len;
|
||||||
|
|
||||||
|
value = stacks->b->value;
|
||||||
|
len = stack_a_len(stacks);
|
||||||
|
if (in_range(value, one_preset->max_range, range) && len > 0)
|
||||||
|
{
|
||||||
|
while (value < stacks->a->previous->value && !check_order(stacks->a))
|
||||||
|
rra(stacks);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
static int get_pre_move_b(t_stacks *stacks, t_tab *one_preset, int range)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
t_stack *tmp;
|
||||||
|
|
||||||
|
i = 0;
|
||||||
|
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))
|
||||||
|
{
|
||||||
|
i++;
|
||||||
|
tmp = tmp->next;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
while (!in_range(tmp->value, one_preset->max_range, range))
|
||||||
|
{
|
||||||
|
i++;
|
||||||
|
tmp = tmp->previous;
|
||||||
|
}
|
||||||
|
return (i);
|
||||||
|
}
|
||||||
|
|
||||||
|
static int get_pre_move_a(t_stacks *stacks, int val)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
t_stack *tmp;
|
||||||
|
|
||||||
|
i = 0;
|
||||||
|
tmp = assign_stack(stacks, 'a');
|
||||||
|
if (sort_path(stacks, val))
|
||||||
|
{
|
||||||
|
while (val > tmp->value)
|
||||||
|
{
|
||||||
|
i++;
|
||||||
|
tmp = tmp->next;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
tmp = tmp->previous;
|
||||||
|
while (val < tmp->value)
|
||||||
|
{
|
||||||
|
i++;
|
||||||
|
tmp = tmp->previous;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return (i);
|
||||||
|
}
|
||||||
|
|
||||||
|
static int get_min_move(t_stacks *stacks, t_tab *one_preset, int range, int val)
|
||||||
|
{
|
||||||
|
int b;
|
||||||
|
int a;
|
||||||
|
a = get_pre_move_a(stacks, val);
|
||||||
|
b = get_pre_move_b(stacks, one_preset, range);
|
||||||
|
if (a < b)
|
||||||
|
return (a);
|
||||||
|
else
|
||||||
|
return (b);
|
||||||
|
}
|
||||||
|
|
||||||
|
void opti_path(t_stacks *stacks, t_tab *one_preset, int range, int val)
|
||||||
|
{
|
||||||
|
int move;
|
||||||
|
int i;
|
||||||
|
|
||||||
|
i = 0;
|
||||||
|
if (sort_path(stacks, val)
|
||||||
|
&& wich_path(stacks, one_preset->max_range, range, 'b'))
|
||||||
|
{
|
||||||
|
move = get_min_move(stacks, one_preset, range, val);
|
||||||
|
while (i < move)
|
||||||
|
{
|
||||||
|
rr(stacks);
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (!sort_path(stacks, val)
|
||||||
|
&& !wich_path(stacks, one_preset->max_range, range, 'b'))
|
||||||
|
{
|
||||||
|
move = get_min_move(stacks, one_preset, range, val);
|
||||||
|
while (i < move)
|
||||||
|
{
|
||||||
|
rrr(stacks);
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -12,6 +12,24 @@
|
|||||||
|
|
||||||
#include "push_swap.h"
|
#include "push_swap.h"
|
||||||
#include "medium_headers.h"
|
#include "medium_headers.h"
|
||||||
|
#include <stdio.h>
|
||||||
|
int get_value_finded(t_stacks *stacks, t_tab *one_preset, int range)
|
||||||
|
{
|
||||||
|
int value;
|
||||||
|
t_stack *tmp;
|
||||||
|
|
||||||
|
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))
|
||||||
|
tmp = tmp->next;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
while (!in_range(tmp->value, one_preset->max_range, range))
|
||||||
|
tmp = tmp->previous;
|
||||||
|
value = tmp->value;
|
||||||
|
return (value);
|
||||||
|
}
|
||||||
|
|
||||||
void normal_move_path(t_stacks *stacks, t_tab *one_preset, int range)
|
void normal_move_path(t_stacks *stacks, t_tab *one_preset, int range)
|
||||||
{
|
{
|
||||||
|
|||||||
500
arggs.txt
Normal file
500
arggs.txt
Normal file
@@ -0,0 +1,500 @@
|
|||||||
|
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
|
||||||
500
args.txt
Normal file
500
args.txt
Normal file
@@ -0,0 +1,500 @@
|
|||||||
|
467
|
||||||
|
484
|
||||||
|
199
|
||||||
|
244
|
||||||
|
257
|
||||||
|
411
|
||||||
|
228
|
||||||
|
384
|
||||||
|
27
|
||||||
|
476
|
||||||
|
402
|
||||||
|
315
|
||||||
|
57
|
||||||
|
353
|
||||||
|
23
|
||||||
|
72
|
||||||
|
35
|
||||||
|
187
|
||||||
|
254
|
||||||
|
103
|
||||||
|
262
|
||||||
|
148
|
||||||
|
239
|
||||||
|
369
|
||||||
|
251
|
||||||
|
334
|
||||||
|
299
|
||||||
|
347
|
||||||
|
290
|
||||||
|
419
|
||||||
|
0
|
||||||
|
223
|
||||||
|
269
|
||||||
|
282
|
||||||
|
150
|
||||||
|
371
|
||||||
|
475
|
||||||
|
130
|
||||||
|
123
|
||||||
|
85
|
||||||
|
311
|
||||||
|
414
|
||||||
|
11
|
||||||
|
256
|
||||||
|
32
|
||||||
|
91
|
||||||
|
47
|
||||||
|
28
|
||||||
|
195
|
||||||
|
265
|
||||||
|
89
|
||||||
|
432
|
||||||
|
452
|
||||||
|
2
|
||||||
|
404
|
||||||
|
366
|
||||||
|
153
|
||||||
|
121
|
||||||
|
160
|
||||||
|
468
|
||||||
|
161
|
||||||
|
126
|
||||||
|
168
|
||||||
|
466
|
||||||
|
86
|
||||||
|
97
|
||||||
|
427
|
||||||
|
326
|
||||||
|
3
|
||||||
|
487
|
||||||
|
87
|
||||||
|
338
|
||||||
|
110
|
||||||
|
227
|
||||||
|
492
|
||||||
|
441
|
||||||
|
417
|
||||||
|
38
|
||||||
|
349
|
||||||
|
261
|
||||||
|
118
|
||||||
|
497
|
||||||
|
443
|
||||||
|
403
|
||||||
|
45
|
||||||
|
117
|
||||||
|
92
|
||||||
|
274
|
||||||
|
410
|
||||||
|
197
|
||||||
|
59
|
||||||
|
145
|
||||||
|
146
|
||||||
|
181
|
||||||
|
433
|
||||||
|
69
|
||||||
|
473
|
||||||
|
119
|
||||||
|
336
|
||||||
|
209
|
||||||
|
454
|
||||||
|
436
|
||||||
|
43
|
||||||
|
132
|
||||||
|
98
|
||||||
|
8
|
||||||
|
293
|
||||||
|
260
|
||||||
|
276
|
||||||
|
264
|
||||||
|
500
|
||||||
|
406
|
||||||
|
51
|
||||||
|
412
|
||||||
|
465
|
||||||
|
439
|
||||||
|
166
|
||||||
|
407
|
||||||
|
382
|
||||||
|
186
|
||||||
|
164
|
||||||
|
182
|
||||||
|
284
|
||||||
|
55
|
||||||
|
36
|
||||||
|
83
|
||||||
|
285
|
||||||
|
106
|
||||||
|
34
|
||||||
|
105
|
||||||
|
243
|
||||||
|
175
|
||||||
|
400
|
||||||
|
494
|
||||||
|
429
|
||||||
|
215
|
||||||
|
397
|
||||||
|
7
|
||||||
|
351
|
||||||
|
280
|
||||||
|
221
|
||||||
|
79
|
||||||
|
26
|
||||||
|
319
|
||||||
|
122
|
||||||
|
499
|
||||||
|
210
|
||||||
|
365
|
||||||
|
66
|
||||||
|
107
|
||||||
|
425
|
||||||
|
234
|
||||||
|
387
|
||||||
|
291
|
||||||
|
364
|
||||||
|
24
|
||||||
|
33
|
||||||
|
287
|
||||||
|
242
|
||||||
|
62
|
||||||
|
178
|
||||||
|
250
|
||||||
|
94
|
||||||
|
288
|
||||||
|
245
|
||||||
|
226
|
||||||
|
211
|
||||||
|
398
|
||||||
|
445
|
||||||
|
191
|
||||||
|
354
|
||||||
|
415
|
||||||
|
305
|
||||||
|
143
|
||||||
|
90
|
||||||
|
281
|
||||||
|
381
|
||||||
|
188
|
||||||
|
238
|
||||||
|
163
|
||||||
|
253
|
||||||
|
458
|
||||||
|
378
|
||||||
|
25
|
||||||
|
189
|
||||||
|
271
|
||||||
|
306
|
||||||
|
61
|
||||||
|
169
|
||||||
|
461
|
||||||
|
17
|
||||||
|
431
|
||||||
|
29
|
||||||
|
70
|
||||||
|
64
|
||||||
|
41
|
||||||
|
490
|
||||||
|
292
|
||||||
|
111
|
||||||
|
177
|
||||||
|
114
|
||||||
|
255
|
||||||
|
184
|
||||||
|
272
|
||||||
|
125
|
||||||
|
225
|
||||||
|
273
|
||||||
|
496
|
||||||
|
252
|
||||||
|
361
|
||||||
|
345
|
||||||
|
206
|
||||||
|
196
|
||||||
|
22
|
||||||
|
304
|
||||||
|
42
|
||||||
|
10
|
||||||
|
379
|
||||||
|
277
|
||||||
|
142
|
||||||
|
453
|
||||||
|
437
|
||||||
|
162
|
||||||
|
60
|
||||||
|
341
|
||||||
|
418
|
||||||
|
266
|
||||||
|
52
|
||||||
|
408
|
||||||
|
219
|
||||||
|
141
|
||||||
|
49
|
||||||
|
450
|
||||||
|
368
|
||||||
|
446
|
||||||
|
258
|
||||||
|
308
|
||||||
|
116
|
||||||
|
128
|
||||||
|
322
|
||||||
|
183
|
||||||
|
423
|
||||||
|
455
|
||||||
|
464
|
||||||
|
198
|
||||||
|
389
|
||||||
|
471
|
||||||
|
459
|
||||||
|
237
|
||||||
|
44
|
||||||
|
489
|
||||||
|
15
|
||||||
|
84
|
||||||
|
179
|
||||||
|
231
|
||||||
|
451
|
||||||
|
50
|
||||||
|
185
|
||||||
|
395
|
||||||
|
317
|
||||||
|
82
|
||||||
|
297
|
||||||
|
493
|
||||||
|
396
|
||||||
|
14
|
||||||
|
263
|
||||||
|
482
|
||||||
|
448
|
||||||
|
312
|
||||||
|
377
|
||||||
|
203
|
||||||
|
320
|
||||||
|
374
|
||||||
|
176
|
||||||
|
216
|
||||||
|
76
|
||||||
|
205
|
||||||
|
140
|
||||||
|
129
|
||||||
|
240
|
||||||
|
332
|
||||||
|
428
|
||||||
|
422
|
||||||
|
330
|
||||||
|
217
|
||||||
|
248
|
||||||
|
200
|
||||||
|
390
|
||||||
|
383
|
||||||
|
156
|
||||||
|
53
|
||||||
|
401
|
||||||
|
135
|
||||||
|
327
|
||||||
|
170
|
||||||
|
40
|
||||||
|
48
|
||||||
|
391
|
||||||
|
328
|
||||||
|
155
|
||||||
|
56
|
||||||
|
74
|
||||||
|
77
|
||||||
|
16
|
||||||
|
30
|
||||||
|
435
|
||||||
|
355
|
||||||
|
301
|
||||||
|
167
|
||||||
|
220
|
||||||
|
235
|
||||||
|
300
|
||||||
|
289
|
||||||
|
172
|
||||||
|
131
|
||||||
|
460
|
||||||
|
246
|
||||||
|
31
|
||||||
|
194
|
||||||
|
247
|
||||||
|
485
|
||||||
|
463
|
||||||
|
359
|
||||||
|
12
|
||||||
|
134
|
||||||
|
95
|
||||||
|
249
|
||||||
|
6
|
||||||
|
307
|
||||||
|
190
|
||||||
|
373
|
||||||
|
409
|
||||||
|
342
|
||||||
|
358
|
||||||
|
88
|
||||||
|
112
|
||||||
|
5
|
||||||
|
426
|
||||||
|
20
|
||||||
|
488
|
||||||
|
120
|
||||||
|
314
|
||||||
|
421
|
||||||
|
9
|
||||||
|
420
|
||||||
|
204
|
||||||
|
78
|
||||||
|
346
|
||||||
|
154
|
||||||
|
13
|
||||||
|
115
|
||||||
|
236
|
||||||
|
63
|
||||||
|
357
|
||||||
|
474
|
||||||
|
37
|
||||||
|
386
|
||||||
|
71
|
||||||
|
495
|
||||||
|
335
|
||||||
|
147
|
||||||
|
101
|
||||||
|
149
|
||||||
|
486
|
||||||
|
385
|
||||||
|
394
|
||||||
|
372
|
||||||
|
65
|
||||||
|
302
|
||||||
|
144
|
||||||
|
449
|
||||||
|
283
|
||||||
|
405
|
||||||
|
214
|
||||||
|
376
|
||||||
|
165
|
||||||
|
356
|
||||||
|
124
|
||||||
|
380
|
||||||
|
1
|
||||||
|
208
|
||||||
|
337
|
||||||
|
102
|
||||||
|
139
|
||||||
|
478
|
||||||
|
229
|
||||||
|
202
|
||||||
|
469
|
||||||
|
375
|
||||||
|
462
|
||||||
|
440
|
||||||
|
333
|
||||||
|
201
|
||||||
|
491
|
||||||
|
457
|
||||||
|
108
|
||||||
|
158
|
||||||
|
316
|
||||||
|
275
|
||||||
|
470
|
||||||
|
350
|
||||||
|
138
|
||||||
|
171
|
||||||
|
137
|
||||||
|
113
|
||||||
|
207
|
||||||
|
267
|
||||||
|
212
|
||||||
|
136
|
||||||
|
295
|
||||||
|
442
|
||||||
|
18
|
||||||
|
151
|
||||||
|
100
|
||||||
|
438
|
||||||
|
157
|
||||||
|
68
|
||||||
|
296
|
||||||
|
241
|
||||||
|
483
|
||||||
|
99
|
||||||
|
96
|
||||||
|
321
|
||||||
|
339
|
||||||
|
39
|
||||||
|
472
|
||||||
|
294
|
||||||
|
329
|
||||||
|
233
|
||||||
|
21
|
||||||
|
259
|
||||||
|
159
|
||||||
|
298
|
||||||
|
133
|
||||||
|
286
|
||||||
|
348
|
||||||
|
230
|
||||||
|
331
|
||||||
|
73
|
||||||
|
109
|
||||||
|
367
|
||||||
|
192
|
||||||
|
416
|
||||||
|
173
|
||||||
|
268
|
||||||
|
213
|
||||||
|
75
|
||||||
|
481
|
||||||
|
58
|
||||||
|
324
|
||||||
|
480
|
||||||
|
370
|
||||||
|
270
|
||||||
|
46
|
||||||
|
278
|
||||||
|
343
|
||||||
|
323
|
||||||
|
363
|
||||||
|
81
|
||||||
|
352
|
||||||
|
325
|
||||||
|
498
|
||||||
|
444
|
||||||
|
180
|
||||||
|
232
|
||||||
|
434
|
||||||
|
392
|
||||||
|
4
|
||||||
|
279
|
||||||
|
218
|
||||||
|
127
|
||||||
|
222
|
||||||
|
174
|
||||||
|
19
|
||||||
|
224
|
||||||
|
424
|
||||||
|
456
|
||||||
|
344
|
||||||
|
54
|
||||||
|
388
|
||||||
|
430
|
||||||
|
362
|
||||||
|
67
|
||||||
|
479
|
||||||
|
360
|
||||||
|
413
|
||||||
|
310
|
||||||
|
80
|
||||||
|
193
|
||||||
|
313
|
||||||
|
477
|
||||||
|
447
|
||||||
|
303
|
||||||
|
309
|
||||||
|
104
|
||||||
|
399
|
||||||
|
318
|
||||||
|
93
|
||||||
|
393
|
||||||
|
340
|
||||||
@@ -29,7 +29,11 @@ void sort_from_left(t_stacks *stacks);
|
|||||||
void sort_from_right(t_stacks *stacks);
|
void sort_from_right(t_stacks *stacks);
|
||||||
void push_range_to_b(t_stacks *stacks, t_tab *one_preset, int range);
|
void push_range_to_b(t_stacks *stacks, t_tab *one_preset, int range);
|
||||||
void normal_move_path(t_stacks *stacks, t_tab *one_preset, int range);
|
void normal_move_path(t_stacks *stacks, t_tab *one_preset, int range);
|
||||||
|
void opti_path(t_stacks *stacks, t_tab *one_preset, int range, int val);
|
||||||
|
void opti2_move_path(t_stacks *stacks, t_tab *one_preset, int range);
|
||||||
|
int sort_path(t_stacks *stacks, int value);
|
||||||
t_stack *assign_stack(t_stacks *stacks, char c);
|
t_stack *assign_stack(t_stacks *stacks, char c);
|
||||||
|
int get_value_finded(t_stacks *stacks, t_tab *one_preset, int range);
|
||||||
/* MEDIUM UTILS FILES */
|
/* MEDIUM UTILS FILES */
|
||||||
int range_bucket(t_stack *first);
|
int range_bucket(t_stack *first);
|
||||||
int get_first_lower(t_stack *first);
|
int get_first_lower(t_stack *first);
|
||||||
|
|||||||
455
playtest.sh
Executable file
455
playtest.sh
Executable file
@@ -0,0 +1,455 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
while true
|
||||||
|
do
|
||||||
|
echo "=========================="
|
||||||
|
echo " 0 - ----- ONLY NEGATIF"
|
||||||
|
echo " 1 - ----- ONLY POSITIF"
|
||||||
|
echo " 2 - ------------ MIXTE"
|
||||||
|
echo " 3 - -------- SANS FLAG"
|
||||||
|
echo " 4 - ------ SIMUL ERROR"
|
||||||
|
echo " 5 - ------- TEST BENCH"
|
||||||
|
echo " 6 - TEST BENCH SORTIE"
|
||||||
|
echo " 7 - ------- TEST LEN 3"
|
||||||
|
echo " 8 - ------- TEST LEN 5"
|
||||||
|
echo " 9 - ----- TEST LEN 500"
|
||||||
|
echo "10 - ------ CLOSE TEST"
|
||||||
|
echo "ENTRER LE TEST QUE TU VEUX FAIRE : "
|
||||||
|
read nombre
|
||||||
|
|
||||||
|
case "$nombre" in
|
||||||
|
0)
|
||||||
|
echo "ONLY NEGATIF"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST SIMPLE N====="
|
||||||
|
echo "========================"
|
||||||
|
ARG="2147483647 -2147483648 8 9 -35 40 -20 7 5 30 10"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
ARG="-147 -71 -59 -194 -86 -14 -49 -32 -137 -113"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
ARG="-127 -57 -151 -163 -159 -66 -128 -147 -68 -83"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
ARG="-64 -109 -102 -176 -15 -19 -103 -38 -192 -37"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST MEDIUM N====="
|
||||||
|
echo "========================"
|
||||||
|
ARG="2147483647 -2147483648 8 9 -35 40 -20 7 5 30 10"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
ARG="-147 -71 -59 -194 -86 -14 -49 -32 -137 -113"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
ARG="-127 -57 -151 -163 -159 -66 -128 -147 -68 -83"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
ARG="-64 -109 -102 -176 -15 -19 -103 -38 -192 -37"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST COMPLEX N===="
|
||||||
|
echo "========================"
|
||||||
|
ARG="2147483647 -2147483648 8 9 -35 40 -20 7 5 30 10"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
ARG="-147 -71 -59 -194 -86 -14 -49 -32 -137 -113"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
ARG="-127 -57 -151 -163 -159 -66 -128 -147 -68 -83"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
ARG="-64 -109 -102 -176 -15 -19 -103 -38 -192 -37"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
;;
|
||||||
|
1)
|
||||||
|
echo "#################################################"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "ONLY POSITIF"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST SIMPLE P====="
|
||||||
|
echo "========================"
|
||||||
|
ARG="147 71 59 194 86 14 49 32 137 113"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
ARG="127 57 151 163 159 66 128 147 68 83"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
ARG="64 109 102 176 15 19 103 38 192 37"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST MEDIUM P====="
|
||||||
|
echo "========================"
|
||||||
|
ARG="147 71 59 194 86 14 49 32 137 113"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
ARG="127 57 151 163 159 66 128 147 68 83"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
ARG="64 109 102 176 15 19 103 38 192 37"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST COMPLEX P===="
|
||||||
|
echo "========================"
|
||||||
|
ARG="147 71 59 194 86 14 49 32 137 113"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
ARG="127 57 151 163 159 66 128 147 68 83"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
ARG="64 109 102 176 15 19 103 38 192 37"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
;;
|
||||||
|
2)
|
||||||
|
echo "#################################################"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "MIXTE"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "#################################################"
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST SIMPLE P====="
|
||||||
|
echo "========================"
|
||||||
|
ARG="0 147 71 -59 194 -86 -14 49 32 137 113"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
ARG="127 57 -151 163 -159 0 66 -128 147 68 83"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
ARG="64 109 102 176 15 19 -103 38 192 37 0"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST MEDIUM P====="
|
||||||
|
echo "========================"
|
||||||
|
ARG="0 147 71 -59 194 86 14 49 32 137 113"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
ARG="127 57 151 -163 0 159 66 128 147 68 83"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
ARG="64 109 -102 176 15 19 -103 38 192 37 0"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST COMPLEX P===="
|
||||||
|
echo "========================"
|
||||||
|
ARG="0 147 71 59 -194 86 14 49 32 137 113"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
ARG="127 57 151 0 163 159 -66 128 -147 68 83"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
ARG="64 -109 102 -176 15 19 -103 38 192 37 0"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
;;
|
||||||
|
3)
|
||||||
|
echo "#################################################"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "SANS FLAG"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "#################################################"
|
||||||
|
|
||||||
|
ARG="0 147 71 -59 194 -86 -14 49 32 137 113"; ./push_swap $ARG | ./checker $ARG
|
||||||
|
ARG="127 57 -151 163 -159 0 66 -128 147 68 83"; ./push_swap $ARG | ./checker $ARG
|
||||||
|
ARG="64 109 102 176 15 19 -103 38 192 37 0"; ./push_swap $ARG | ./checker $ARG
|
||||||
|
;;
|
||||||
|
4)
|
||||||
|
echo "#################################################"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "SIMUL ERROR ON PUSH_SWAP"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "DOUBLE FLAG"
|
||||||
|
|
||||||
|
ARG="0 147 71 59 -194 86 14 49 32 137 113"; ./push_swap --complex --complex $ARG
|
||||||
|
ARG="0 147 71 59 -194 86 14 49 32 137 113"; ./push_swap --simple --simple $ARG
|
||||||
|
ARG="0 147 71 59 -194 86 14 49 32 137 113"; ./push_swap --medium --mediun $ARG
|
||||||
|
ARG="0 147 71 59 -194 86 14 49 32 137 113"; ./push_swap --adaptive --adaptive $ARG
|
||||||
|
ARG="0 147 71 59 -194 86 14 49 32 137 113"; ./push_swap --bench --bench $ARG
|
||||||
|
echo "#################################################"
|
||||||
|
echo "SAME TYPE FLAG"
|
||||||
|
|
||||||
|
ARG="0 147 71 59 -194 86 14 49 32 137 113"; ./push_swap --simple --complex $ARG
|
||||||
|
echo "#################################################"
|
||||||
|
echo "TOO MUCH FLAG"
|
||||||
|
|
||||||
|
ARG="0 147 71 59 -194 86 14 49 32 137 113"; ./push_swap --simple --bench --adaptive $ARG
|
||||||
|
echo "#################################################"
|
||||||
|
echo "WRONG FLAG"
|
||||||
|
|
||||||
|
ARG="0 147 71 59 -194 86 14 49 32 137 113"; ./push_swap --simple --test --error $ARG
|
||||||
|
echo "#################################################"
|
||||||
|
echo "DOUBLE NUMBER"
|
||||||
|
|
||||||
|
ARG="0 147 71 59 -194 86 14 49 32 137 0 113"; ./push_swap --simple --test --error $ARG
|
||||||
|
echo "#################################################"
|
||||||
|
echo "TEST WRONG INPUT ON THE NUMBERS"
|
||||||
|
./push_swap --simple 5 3 4 2 d
|
||||||
|
./push_swap --simple 5 3 c 4 2
|
||||||
|
./push_swap --simple v 5 3 4 2
|
||||||
|
./push_swap --simple 5 3 4 2 455313212345
|
||||||
|
./push_swap --simple 5 3 4 2 "++++432"
|
||||||
|
./push_swap --simple 5 3 4 2 +++--43
|
||||||
|
./push_swap --simple 5 3 4 2 +
|
||||||
|
;;
|
||||||
|
5)
|
||||||
|
echo "#################################################"
|
||||||
|
echo "TEST BENCH"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST SIMPLE ======"
|
||||||
|
echo "========================"
|
||||||
|
ARG="147 71 59 194 86 14 49 32 137 113"; ./push_swap --simple --bench $ARG 1> test.txt
|
||||||
|
echo "#################################################"
|
||||||
|
ARG="127 57 151 163 159 66 128 147 68 83"; ./push_swap --simple --bench $ARG 1> test.txt
|
||||||
|
echo "#################################################"
|
||||||
|
ARG="64 109 102 176 15 19 103 38 192 37"; ./push_swap --simple --bench $ARG 1> test.txt
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST MEDIUM ======"
|
||||||
|
echo "========================"
|
||||||
|
ARG="147 71 59 194 86 14 49 32 137 113"; ./push_swap --medium --bench $ARG 1> test.txt
|
||||||
|
echo "#################################################"
|
||||||
|
ARG="127 57 151 163 159 66 128 147 68 83"; ./push_swap --medium --bench $ARG 1> test.txt
|
||||||
|
echo "#################################################"
|
||||||
|
ARG="64 109 102 176 15 19 103 38 192 37"; ./push_swap --medium --bench $ARG 1> test.txt
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST COMPLEX ====="
|
||||||
|
echo "========================"
|
||||||
|
ARG="147 71 59 194 86 14 49 32 137 113"; ./push_swap --complex --bench $ARG 1> test.txt
|
||||||
|
echo "#################################################"
|
||||||
|
ARG="127 57 151 163 159 66 128 147 68 83"; ./push_swap --complex --bench $ARG 1> test.txt
|
||||||
|
echo "#################################################"
|
||||||
|
ARG="64 109 102 176 15 19 103 38 192 37"; ./push_swap --complex --bench $ARG 1> test.txt
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST ADAPTIV ====="
|
||||||
|
echo "========================"
|
||||||
|
echo "#################################################"
|
||||||
|
ARG="147 71 59 194 86 14 49 32 137 113"; ./push_swap --bench $ARG 1> test.txt
|
||||||
|
echo "#################################################"
|
||||||
|
ARG="127 57 151 163 159 66 128 147 68 83"; ./push_swap --bench $ARG 1> test.txt
|
||||||
|
echo "#################################################"
|
||||||
|
ARG="64 109 102 176 15 19 103 38 192 37"; ./push_swap --bench $ARG 1> test.txt
|
||||||
|
echo "#################################################"
|
||||||
|
rm test.txt
|
||||||
|
;;
|
||||||
|
6)
|
||||||
|
echo "#################################################"
|
||||||
|
echo "TEST BENCH SI SORTIE 2"
|
||||||
|
echo "#################################################"
|
||||||
|
ARG="147 71 59 194 86 14 49 32 137 113"; ./push_swap --bench $ARG > test.txt 2> bench.txt
|
||||||
|
echo "CAT BENCH bench.txt"
|
||||||
|
cat bench.txt
|
||||||
|
ARG="127 57 151 163 159 66 128 147 68 83"; ./push_swap --bench $ARG > test.txt 2> bench.txt
|
||||||
|
echo "CAT BENCH bench.txt"
|
||||||
|
cat bench.txt
|
||||||
|
ARG="64 109 102 176 15 19 103 38 192 37"; ./push_swap --bench $ARG > test.txt 2> bench.txt
|
||||||
|
echo "CAT BENCH bench.txt"
|
||||||
|
cat bench.txt
|
||||||
|
rm bench.txt
|
||||||
|
rm test.txt
|
||||||
|
;;
|
||||||
|
7)
|
||||||
|
echo "TEST LEN 3"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST SIMPLE ======"
|
||||||
|
echo "========================"
|
||||||
|
ARG="2 0 1"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="2 0 1"; ./push_swap --simple $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="0 4 2"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="0 4 2"; ./push_swap --simple $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="27 5 -2"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="27 5 -2"; ./push_swap --simple $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="17 20 0"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="17 20 0"; ./push_swap --simple $ARG | wc -l
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST MEDIUM ======"
|
||||||
|
echo "========================"
|
||||||
|
ARG="2 0 1"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="2 0 1"; ./push_swap --medium $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="0 4 2"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="0 4 2"; ./push_swap --medium $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="27 5 -2"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="27 5 -2"; ./push_swap --medium $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="17 20 0"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="17 20 0"; ./push_swap --medium $ARG | wc -l
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST COMPLEX ====="
|
||||||
|
echo "========================"
|
||||||
|
ARG="2 0 1"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="2 0 1"; ./push_swap --complex $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="0 4 2"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="0 4 2"; ./push_swap --complex $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="27 5 -2"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="27 5 -2"; ./push_swap --complex $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="17 20 0"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="17 20 0"; ./push_swap --complex $ARG | wc -l
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST ADAPTIV ====="
|
||||||
|
echo "========================"
|
||||||
|
ARG="2 0 1"; ./push_swap $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="2 0 1"; ./push_swap $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="0 4 2"; ./push_swap $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="0 4 2"; ./push_swap $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="27 5 -2"; ./push_swap $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="27 5 -2"; ./push_swap $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="17 20 0"; ./push_swap $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="17 20 0"; ./push_swap $ARG | wc -l
|
||||||
|
;;
|
||||||
|
8)
|
||||||
|
echo "TEST LEN 5"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST SIMPLE ======"
|
||||||
|
echo "========================"
|
||||||
|
ARG="2 0 1 5 20"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="2 0 1 5 20"; ./push_swap --simple $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="0 4 2 -100 7"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="0 4 2 -100 7"; ./push_swap --simple $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="27 5 -2 10 3"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="27 5 -2 10 3"; ./push_swap --simple $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="17 20 0 -400 -245"; ./push_swap --simple $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="17 20 0 -400 -245"; ./push_swap --simple $ARG | wc -l
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST MEDIUM ======"
|
||||||
|
echo "========================"
|
||||||
|
ARG="2 0 1 5 20"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="2 0 1 5 20"; ./push_swap --medium $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="0 4 2 -100 7"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="0 4 2 -100 7"; ./push_swap --medium $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="27 5 -2 10 3"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="27 5 -2 10 3"; ./push_swap --medium $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="17 20 0 -400 -245"; ./push_swap --medium $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="17 20 0 -400 -245"; ./push_swap --medium $ARG | wc -l
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST COMPLEX ====="
|
||||||
|
echo "========================"
|
||||||
|
ARG="2 0 1 5 20"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="2 0 1 5 20"; ./push_swap --complex $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="0 4 2 -100 7"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="0 4 2 -100 7"; ./push_swap --complex $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="27 5 -2 10 3"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="27 5 -2 10 3"; ./push_swap --complex $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="17 20 0 -400 -245"; ./push_swap --complex $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="17 20 0 -400 -245"; ./push_swap --complex $ARG | wc -l
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST ADAPTIV ====="
|
||||||
|
echo "========================"
|
||||||
|
ARG="2 0 1 5 20"; ./push_swap $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="2 0 1 5 20"; ./push_swap $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="0 4 2 -100 7"; ./push_swap $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="0 4 2 -100 7"; ./push_swap $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="27 5 -2 10 3"; ./push_swap $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="27 5 -2 10 3"; ./push_swap $ARG | wc -l
|
||||||
|
echo "##################"
|
||||||
|
ARG="17 20 0 -400 -245"; ./push_swap $ARG | ./checker $ARG
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
ARG="17 20 0 -400 -245"; ./push_swap $ARG | wc -l
|
||||||
|
;;
|
||||||
|
9)
|
||||||
|
echo "TEST LEN 500"
|
||||||
|
echo "#################################################"
|
||||||
|
echo "#################################################"
|
||||||
|
|
||||||
|
echo "========================"
|
||||||
|
echo "======TEST ADAPTIV ====="
|
||||||
|
echo "========================"
|
||||||
|
shuf -i 0-9999 -n 500 > args.txt ; ./push_swap $(cat args.txt) | ./checker $(cat args.txt)
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
./push_swap $(cat args.txt) | wc -l
|
||||||
|
echo "##################"
|
||||||
|
shuf -i 0-9999 -n 500 > args.txt ; ./push_swap $(cat args.txt) | ./checker $(cat args.txt)
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
./push_swap $(cat args.txt) | wc -l
|
||||||
|
echo "##################"
|
||||||
|
shuf -i 0-9999 -n 500 > args.txt ; ./push_swap $(cat args.txt) | ./checker $(cat args.txt)
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
./push_swap $(cat args.txt) | wc -l
|
||||||
|
echo "##################"
|
||||||
|
shuf -i 0-9999 -n 500 > args.txt ; ./push_swap $(cat args.txt) | ./checker $(cat args.txt)
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
./push_swap $(cat args.txt) | wc -l
|
||||||
|
echo "##################"
|
||||||
|
shuf -i 0-9999 -n 500 > args.txt ; ./push_swap $(cat args.txt) | ./checker $(cat args.txt)
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
./push_swap $(cat args.txt) | wc -l
|
||||||
|
echo "##################"
|
||||||
|
shuf -i 0-9999 -n 500 > args.txt ; ./push_swap $(cat args.txt) | ./checker $(cat args.txt)
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
./push_swap $(cat args.txt) | wc -l
|
||||||
|
echo "##################"
|
||||||
|
shuf -i 0-9999 -n 500 > args.txt ; ./push_swap $(cat args.txt) | ./checker $(cat args.txt)
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
./push_swap $(cat args.txt) | wc -l
|
||||||
|
echo "##################"
|
||||||
|
shuf -i 0-9999 -n 500 > args.txt ; ./push_swap $(cat args.txt) | ./checker $(cat args.txt)
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
./push_swap $(cat args.txt) | wc -l
|
||||||
|
echo "##################"
|
||||||
|
shuf -i 0-9999 -n 500 > args.txt ; ./push_swap $(cat args.txt) | ./checker $(cat args.txt)
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
./push_swap $(cat args.txt) | wc -l
|
||||||
|
echo "##################"
|
||||||
|
shuf -i 0-9999 -n 500 > args.txt ; ./push_swap $(cat args.txt) | ./checker $(cat args.txt)
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
./push_swap $(cat args.txt) | wc -l
|
||||||
|
echo "##################"
|
||||||
|
shuf -i 0-9999 -n 500 > args.txt ; ./push_swap $(cat args.txt) | ./checker $(cat args.txt)
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
./push_swap $(cat args.txt) | wc -l
|
||||||
|
echo "##################"
|
||||||
|
shuf -i 0-9999 -n 500 > args.txt ; ./push_swap $(cat args.txt) | ./checker $(cat args.txt)
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
./push_swap $(cat args.txt) | wc -l
|
||||||
|
echo "##################"
|
||||||
|
shuf -i 0-9999 -n 500 > args.txt ; ./push_swap $(cat args.txt) | ./checker $(cat args.txt)
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
./push_swap $(cat args.txt) | wc -l
|
||||||
|
echo "##################"
|
||||||
|
shuf -i 0-9999 -n 500 > args.txt ; ./push_swap $(cat args.txt) | ./checker $(cat args.txt)
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
./push_swap $(cat args.txt) | wc -l
|
||||||
|
echo "##################"
|
||||||
|
shuf -i 0-9999 -n 500 > args.txt ; ./push_swap $(cat args.txt) | ./checker $(cat args.txt)
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
./push_swap $(cat args.txt) | wc -l
|
||||||
|
echo "##################"
|
||||||
|
shuf -i 0-9999 -n 500 > args.txt ; ./push_swap $(cat args.txt) | ./checker $(cat args.txt)
|
||||||
|
echo -n "MOUVEMENT :"
|
||||||
|
./push_swap $(cat args.txt) | wc -l
|
||||||
|
rm args.txt
|
||||||
|
;;
|
||||||
|
10)
|
||||||
|
echo "Au revoir"
|
||||||
|
exit 0
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
echo "==============================="
|
||||||
|
echo "TAPE NIMPORTE POUR GO NEXT : "
|
||||||
|
read tape
|
||||||
|
clear
|
||||||
|
done
|
||||||
Reference in New Issue
Block a user