From dc99227f94a6c9cd6d6a28c58dc3bdd8657740e6 Mon Sep 17 00:00:00 2001 From: hugogogo Date: Tue, 15 Jun 2021 14:27:55 +0200 Subject: [PATCH] push et swap fonctionnent --- builds/algo.o | Bin 102800 -> 103056 bytes builds/print.o | Bin 104560 -> 104664 bytes builds/push.o | Bin 103776 -> 103664 bytes builds/push_swap.o | Bin 105360 -> 105256 bytes builds/swap.o | Bin 103552 -> 103976 bytes includes/push_swap.h | 4 ++-- push_swap | Bin 100584 -> 100736 bytes srcs/algo.c | 14 ++++++++++---- srcs/print.c | 12 ++++++++---- srcs/push.c | 43 +++++++++++++++++-------------------------- srcs/push_swap.c | 10 ++++------ srcs/swap.c | 33 ++++++++++++++++++++------------- 12 files changed, 61 insertions(+), 55 deletions(-) diff --git a/builds/algo.o b/builds/algo.o index d5927b0b3e1412ff75d3ea2d46442ec810c5be5c..80a5d0ce80158cf08747fce73775ff226d6821d0 100644 GIT binary patch delta 1494 zcmbu9Uu=_A7{+(Lb+g4kY|FN8$YdGY=vQRp(+i0gY@)`JXatn;Po|8F>A4W0Y~8x8 z?Z*CfbF9$B#|YkNNbDEXG`%qzox~U!7hb6e#v7B8jB`Oogk%>a`kbCZ2)CZ5>3N>> zd!P3`ZTh7?FHc=8Pub#FHhA8O&+lCh&Aq%DO8yZ_{<2)c6)IS-t2_KL}V zDCB{5{(Jp&uLnj*uUOS$EL~RGC>C?ArB4d6nBL*pk)HM33vHrRg3yUFFa8(Wxe=#x%KU1k9bkpE7l=#Qh0Kgmhx+L z*tI?}k^B4F$7{+yI8qYsNyqZfIJtR2h&gT8%TzV|;ufJ%J z0`oQZ_iDes!!#*WC#WLh6ns<;fN>N!2J_P&8+=A?t> zN60oqj_AWWxFckPP?WyzI@7Hl*(kehh8$%{1esBmY=+Y6ci1tiEs!y)pODdNE0k7$ z!H!coka4Entv6}ICe4AO%QQPd=2^%Dne$DCX@oPxj;}+}72m-gBeM%~jLe-PQ;Tdr znO#tHtw%Q^IL^^`Lyi;rY@-R$w9~|mZXX$>*2&W z(LpG>;u7p>!%UO;t;q1_jgvV9MOWlu&yYC;Im0GfTj9>I$y-ob?rB9ZS&%Zxgq~J2 z7;iYvgu_sD#aFOrna~Y6OXg~kX*0ujL(vthu;<9U4LQfyu1#>~82b(srEheTi5)P5 z9fACi?mtD>4=2fHJy6lVb8Gn^8vVL*!(CI zrSDu3iosbR)C;*lsA3CTehT2mg6Oa=FX?|hI#VJbuHd~CuhI)Q#qyG?W}XCYrTDZ+ V{AuJgoU>w^w^tP8W&J4G@E^rB$yopZ delta 1305 zcmZXUPiz!r7{>cem%2j)7bsmS)t3H&oe_lfAY3R_V_Xxpq->?2AU1{Scd?{P|1G6k zTH0>6&{-z&IiLqaAlXSEY&Hfi8i_GlJYymrOiUZ$OH4o@sRt9E*>B{+US@vJ`@GNl zelyu|E>$@fs~k%lE!r21>RjjDMDESyMD~|N_Q$&w{3UYkeWRx4>4LNH{j}Rx*&vdo zeC0+VlJ1qz>tfPXp@+N|x1y!TE52+LeI+;68(PsC-X88PncKeo!u@HXd2P~iP(O2mR&wDH~yRccob$5UdLScI1ntzsVc zQeuxd0_%im6MsUUpy;5WNs){jVb}xo+=m<>eiwn~V+6{_KO(RPiEAJSiGQ=IQ4yJB z4KX(gImF`fI(S3$)X)!QG z5Fe(g9*U~*h^916^^j@i=1@p8cM}xJxUe4fNftLjo+Msb4^N{aa*Q=fZxiIGUyQ;V zrPqQYn*T)gO0_7aIn9PV#g?@woMMX&(;%!2X$NG6X{gm{ zX`QwMiYn8rae7{X9H-~iM(t@pe1sF{8(~jy z^}Uc2H0^HEK^-U#(bNIutMh^Sj(*1bASc=STNAuVwkDy7rrE4pU)HUikY~8VP87~? zhfXMxc|GvN^q%`6rx^5mGrTDVbwLqDEv#v_9Dtl=%S$afwhr+zZgc>Os(1_5jP}gX z^I72G>&?(}5Q?f8gO#P{AY_(9er|!6<&Y1ceEh2g_G}sDEEE0>5_rN1CVU7*RlE%= z$Am+WIeLz6{{MjGhkOW%s&HY=(Q_DbjO6*1g%#2%w#!T;BzEiYnx{-5S~lpc6_wmS>D{S!RM^J}sEtHw#h&x>8* M9#O`d{->n=KlC|rG5`Po diff --git a/builds/print.o b/builds/print.o index 327efb844b08da098c7edb4fa9899cba53ff19ba..08ed2672dac1b7638fdf3c08e781bfa6d66ca604 100644 GIT binary patch delta 7248 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 Mx1-qjNNCyoUsr>YVgLXD delta 22728 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 K6ufh^M*jn7b?p`a diff --git a/builds/push_swap.o b/builds/push_swap.o index 62a47a1c463c371c956409f41fc5b30fa12d1a8e..c1666a57661c641f93cbfff2cd8486b077b6429c 100644 GIT binary patch delta 1682 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 P$Bz$)@gZ<7HZA`b?b*Ag delta 21563 zcmZ{s34Bv^w#WMqTU!Jg5Yo${q_VUqEn%^MY+;c`L5PCLCJj3(LX;g@Qii3JrQwQ4 z7N2Gu6p{67ciGoB^AT* zABHbKSW^DMQM;l>^P=IHZ(2!uRwSiUVnkB16jkp&7|6)Af2`5caX4dV{hB$Zd+uyQ zm_J^*nysYP3uKtwh4_mjJhk5V^zWth$;#x~chzd`YxH~f)@k<-$sJu9i95SATA2)1 zn$ZA@VQT)~b%A}kmMfplYO>kT95kvO;{0=FO`n-z>h#7O9N~%fb+!L#zgxSZU9V0% zbJ&jUckLWf=dnDqc;|_N$u%3Ff1zr2_)Jx1)kx2o%py-_&&;CCqMb7eFW1_+sdKID zh7V4g^5CRd<7SPUIBD{<`zK9o>DjrZS9VSN-scDG+|ze=j{WkM);m|-@#4+)19vpu z*<e!f2^D;XN;-L~^9mzkCPxtM+ytjW&EXqeF@BW00l?e(HR zo(jHm+E){@?fCb_wUf$Sw)=={$ylK^@%jS(`|S#UX8cZn@pt+r(H(ew?sxj$KhO{S zfzD;fum>J>Tm4Gd$SJm1@Qk|n@85RlsLPzTHys^k9huJXCS^0wb{=zCC&sfpRMAq~ zi}dXgEZ?o@19tG3%hxo-@_mY)YQ(~Pr4L=lLWR<&+HuTlWgnI!iUw?R++~fuhvnUh zzGQolmfXwo`-;A62atZYhUKpn{nid6y>J!FzbfjtV@SV!l;u`9Yv_||;XZZ(X=;Q_ zQFMXr{=sFX#?_wxL;XLvI&!>>jPDfvO}gTY(ic2n@B3k0(`k3HV;k{L6{ulv`+*+| zO~Q`+c+y1d@QJt0HrxNxIP<0*{b{cCN_)01R8ddZ-jhY3+7)0g!(lzzGs>mMk+{{5`~UFj{`+1ZIgbBEn6G0?nghZ05RUOS3E+uGF$ zmsxCI#NXeu3r-gy9eH}7Rd)Qe%TcSdeH;^)ZR^Zj)4>j(ak;_H#$x7VP`WQQW-eonP$zF?8v{E~EzR1+I z6KHc)Glm67ZKS#}8NbxT;)Q~i`3{n^#=jdo1+ zRIepf+|M{2^U78BFFzM9@egBNuK_h>2l4avVu$5_c29}+g_w)E~eWR4cS4Yvt)~W zRncK~1nHh$>>E>bsU1i9i!7`kE4slpzqzdAGAh4N^r-DY`rcZOthay?JAibAv~xoF z-e-rA_LW`tlA@jL7}84FYO~a8c+O5By{RAP+gQ<4w)>LHnzWLsThS4=AL-9BGTSR! z!ww;RPeye&MSr%Vmx|0JyZVyLw^h~#zp}}{mGd2;^gg3mAFK3#*xt)7>#xh0PE+(} zJBW1NDyFj)EwUp>zh1#Kq-drcNBU6~)3u6zYMU!Av&Xis6j|@fTJ@B&8EXfwxU7S+ z97h#>%MK%bvXJAysptkfhIB_)rd5jCb^_@3>lZNYaON+6}`&M`W24mddZ=v+z z;5AtE8T}a-D0~|P2{+4Q+(qF75J7B?z;0uTEL+ZHgOybk7>6k`e+7>NWBr!Pu_h_2 zix43ExSR`v3NL~%;fWROy-48#h#~g1AIZ2};f#K)uUC4@Zme%q`f703z}&u(+kl9| z$H7mys~j0$Q21sDA@+UOl!Nb9*l``}Z!7(4IRL${^wCgFxvdPdTU_BI;H-(b^?1f# zD_jq}gm=o|Jf?6z2olbdadS@L&JaQDnI&7Fp_?-Nqz2<5Ipfz+dIcP-i6dgnayGXV zo(G;ZxWZluka*rX5$$71iaa3_3|jT znx?F_L6GoDxrd&u@beHM+}dLAkivg~coGj{yjJ0fVCtgx!TO9hDf|X_2@sJ?gX+C=&Pa`9ITA~2Btm^ z%`d=HA8V2$6`iE4mO+5<;mMp+P~mzICj7HB?jnT;K#cJA=ImXr@N`HJK9bsb6^??t z0pdf_!4ZY~f**0yl6oBc1%;arfU*Xr(Bl&Kw-rAlci!(S{Zpu>Tu)rfVdDyS0cQ?k zdU#5ouN6KDUc#4TJwK-K_YfppEFFDL;qwq7+)zfmk#k~dPy)nru**IK;fW9;d~PXw&sX>>h!T#--STpUheI{t7*Cdru)==< zXCuTT`g8Ed6rKTI!iVKHV7tQ4LJ+ZU(?jh2s={@oxn5U#T{-E;l)eVyl-u_99PVR< zp8<0<;^Lbaf1&W_;352_oO8ZY7zY61ZSq7Sq43`zOn8uZUsCuW#0VE$$9c<2kUkc= zAwl?}9Dto{mBt6b-57D_BG%>Do5u6NkJ$8w=w!T{f)E-1CS4-Cf7-YhqJ;NM;aKuG zB8^8vHR2_C_c508rt!%JtQYVltsj$pRZ5uFb3~A>FRgEz!2zT%()ycxK!mwXa8d4X z4;%SZW_LoQ307h4^{kIjxF5t3E#&BYTFZg)qVQ>OT8Q)RXI(!VYz|(+uZedv z!)B=^csc|TFBvGkTcB`@k!;>U=_6%K7Arkfw_Zw5jo|@Gmo|brO>q!KWoNrX8Jz@A zQ>;ScVO$pd46z#o2oI7wt{KYv2!s(k-1+cqQ&VXDS-zL5P-bsH0?m9|q!TtNe7P=X zu9t&WA=dReP!s&kFkHTyv0eupUe@)b-78Chp0tlZ6vJ7k$FrNBqdlOSa9lcBf~RLl zCODfT&XwF`KTYE`;3e!Y<>1ogX?zHRgf~giQTO=ttugaR@UF;-1W4=2Ovy%=S0?DQTQ8(5k9?w^}PyD zg9PSnwt@Q^w0c|?p+m|FPiKVZtYrO1g~vgN@D)GnzbO1HLUb5;AP{F<6C%mi;>oU#L-p@ja@Mal1dJpzMl<=xs*jrEM zYav>SxO_C@B9-_1;LJnpl-o&JgVTAx0$#*;JRX^cz26t&`S`f1#seHg_dvmB)^!D1 zLY(qAD_=AVuaU8 z$LVhG2noc#^U`s;+YemDMee|tbgQkI%z_>VOTpg?a~mk93q1}lLx`~FKK8ytMePJp z!V7X)4=6kXsuBBotz~_N!ZjDLAX`+rtc#_^^r|=-ysa@@fz0#@6)wL!3mcSvm5d-g zHvS0_443Yv+RAM-#0meA_bp)BAijGRyXm?83U~-_p2t}4bmt&Ic)#?n?!}Q1COlW# zTW@T`AV#>cG@MtJ{1!+M23kk)qc=93`fYInb%9_pUj7PxOu^yFCet~I9nu}q1wzQI z(%V?q4T#$>Vn@xEu&=EtY#Np0qpoZ2P0%pk+-xn_#9?%8ZiXOEVQc7E#=18D1rfp* zr!&^InUGuntf!>1dYg`bDM0U@tJz!Ea2j|B50tSKWUF)o^nd{2f5`aO19B&X3vdnU z4KcE+>dM|5RS*jjgq?q4J)-bBaJNHTAg%X;!dt*kc&aRLyA?hGA;K3MvHrfoPe2s0 zZgYo&h-&g(I^F0w5gS9mgb3Fpd0yrA%42qN|!k+WuP!<_P> z8UMXZdwo{F*UxrWEBnn5r`+C`F3(fA1k4SHy?xkQpVj+|Bak5cs+4?=!cT*{J>o2Bk3T8=8u$r+C}UR7%IhIS z_{&l*xn7utLX>c$_KfvpT@TfS`^i|=3)4z)79t)lyNsU7C&5ejh@5D=oJV>(eFZ_n zZvg9h#q9n;6O2oP=~ z!S$AoXKBK%zjLAmXf!K{~W54bxa&bybr_43^j z{DddijN>ZPD1->t9mKj`ttUg2@K%{A$CNid86{jUXS;d|;}Q9GJRk6B)$nO3efE;- zq`M?__LB2VT2Gyx^iPnc zk>p69F2V!|5Z)?7SK2C#Z-#IeTsW?Q7+L)`lk<>$F>UoaBnUs1TCr6L?*R9WIB4vl ztm~zziR^fKMh|Yo_IjwmM8+Zr@uV;O|!u=r773;SL!erH78e31un;=H`$!_euQw6yP5`^Q@#BVG7 z3Ano<{or+J=ubE3lWMpJAwjs6Y&Gi@{utan5Fe4fRlgbe5cmm?mi6m7 zh!Vaao1uR1dl6IgbT(6{JD6Tr++DJ+6ev6fJcRelEkd!vpF)7}^f-P&f=B z#O6lW)EoN&4WR0AL3*+y9XEHS7kK_j2H2DYZ+(N;A?6`Yy%HrhcuFY>u@6k2se6!y;>{p zM06uuo|gxwD__9}cF5{P{-$>uyn;oKqYcBj(6SjGBSrQ@TozL?uL(-_~Y zFh08`JVdtF`3nCFqJ%RBviC}bXF@gMGpiZv*A0(>vmfGwjMOKU_pjhZ>>DL#nW(}w zWrg0Q^vN#HO}}SY2@%R|_j1M`E4SScCw!lrUcOZLEinDDFe9X<`hCJ0vM8QXZqt06 z+s{hJ^B9J+{!7YQt0tSJ2G|V{COn{w8y`b`do-6!^v=-qVP5Mu-pAgzo9Sdvz3m2 z^l&p4eykk(mMOdryo6WF7N*}ZEPx>4%4HnZe8<0T3o zf(YSuvX<)C5ATCGVV|r8Ta@=ZU~a+9@gi8an1SYN2w=(@CxhmFW&AmW3GbJ~^(P81 zgBaoCt+=52eL;L#f$(f;g_Fv=9k_2ryjrSxN#O^O6tntG&NefL5OgC2Ip-l zTm@0WJ7jxntMCY@Cj6Gj`u)GN;2eZ_>75+BpYnbjyn}H29s@zNGCiOiQ`VKaY&=~V z?}9kRIwbe@3l%;JW-yMt8mrk`zpK;O?0U{^u+rN?oN{v(G9In41!gF|0`tKX#?usTaSQ7+m3}0^`dp>w zj$nPU(j9)*^=o_gUYFDXhT?HNJX*7qKtVn`NiMiTbSPD!us>)~{8%8|VcD*mb+fHATtCeO7Hb?lxnO^bPVo zVD7+zC3>=6SK$Ki5N;`BQ_gm2@3Rmfys?1YxNraG?t4Fk2|vAou@oWgJrZJwv7q#| zy62C+R=+`l>xXRr>j9>DF8RdKx@#q8rK`CELij+^S|v{jC1koJOCg%XL)lyAaT@P} zYQm%CI52>%(zrV~ha-MjPH6g(8-SPaE@@ktNNMj55G1^N8b_5aD2*>bgm7~?94u0K z&wx1M^z+*ag;UROr3cbcQ_pW@n@sBu@|R5eQUg(i8xMgyF}M4q1!PpDy=#@Qy&eZI z%i{*!>@PwL!&!CZVPqGT+i6G;?j@tntMD;!k3c+9T5Pbw<=`jWvXpf_vV#yJTq+Y) zkL)uLCH$%sS=T56)r2?Q&%yP`o&nCgu$_*D7|W)UZl_D~6j0ZwvIE->1Med++z{Dve;X9IDXMhxVLnmF6+|}LTrA5NB}SI zCEv9(SDYB6%7-yWmm!)HLiLc1b zpziKBWs%g~eGU@iuxd9a-}X0)!Ci{2^`V?9^t_w{e!@S?WYBpyAw;;}GOm~IqHp*m z!2}(B@S{f-{zV>nAKAoMw_;at;-Ijy+A!9QhJOT2c%p3cy5x63kcQO2F#pQU^kuV9?=UJr|08JNKkIiu3%jc*+OtnK>Yn&#(IQ)4t~O4%Ht~;Lh0b+A%xgB zYd(9ARC!-5!$hwU<+rh+v|l=04pdWa%lk8Krov4J=R}-~E5JJuttQIquG?<~1PSlk z%-*{Fo`eYD6LR~Zo9hI`DUUW_CZW}N8BDraCV+=sMt)#~&-s((7eC~F3)1z!N_z9;@)*5$9{+B*w(ny-( z3q|ORH$qebPjgw;bO~;jL8E(MKRBmg)=$V9uX~^!coF-?t>%L39&n9jU9S$G%MG|5 z!5{HS@rYDKchy0NQ(+Ew;;6c-{u9hptm%hfO~t2J3m`zL$6pIiHO2KEhcjT`9CKs# z(C^u~G6S;bnj1|ec;}klcnRU9MrDl*+x?Hm@cCSmpJmrz)8>#h&lG1J7SB@fQSv2e z=-;3mlaA+V!`^wOm!r>daLmW+m$jiUU1uJLGQ64^5Swp$JNldf#{x{&1@8h(4s8Tw zlxz<%N`BY~91Aho6TAyCc>yUVv%i$-G1b7n#irO;;CKkF`hoW$w5q%Y$|#AqVU+y* z8gMK!y|SKc%%#5zeC7Cc{lwmUab&Gv|l2Y#|1jjOrwY@3p z7F1EJj!=eb_Fhq2qV-a2u8!dN6UyI;yikHO}F|XL4Ft0~DgJU@+L*QMG$y`5_ zVKOTsi*tAIt->t);8=m`m!dX-s`aSe4rQo164$|AY&J|fR$`=8;9ZH4Du+QCCbRx2 zXEdxhb;xjVtU{wU;9Z4ANAH9(N)F>>PqrkBmlQ{cU zV{+RlD5K;=h*5IsXmC`RUhqyi_Et%S>FU@q8p=>H8`wQ(3^>+cgY0R;t(PP1GzQ8@ z-Y4>)WIGk(6HUijbZ!FPwHW=>SSX`pSMaXEs!oN_8q)}_UWYGpmOzZ8N5QN`>0y+z z9&XE7GzVWL)_EK_)?*GkL@kt_$Ss93(hrG#x9IPbf};}i>H*$L%sPKOlu>d5#3=d1 zcyNTVUBAfZJX}!q5auxv%23TdB`Q^p2KtVP;Mjo984wGj^I(#t2tp5|(=+?*1C_r=ar8;Lf`X_@ySev$a%E28~w_AJn2r8 zbkXDpEzpINd|IiS;Hb4-Wa1}!ruLb=*7m^eJkL1ke$1z>mC;vTkoJ!@*mi1vs>WbJwfU`##hnFc zSVoMM-L4qRQI%_dkv;L3*|wkAECTqJoqXf*?OAS%+TnKWDa={5hvklHIaq6tAIi5o zZ`iBvq}!bIGjvgD#1fK0Z4Y+}_ojEcetWltUENW|{! zk{O>tj;)k;cD}ruw$`>hD1|bewJ+$5yDnHI%vreI0x~4N4NS$`B!)t>!7iAU6){b*VkyuU_r6-`({%`0K0ViSr9DT zI2x(%=KK1H2+ZW&>O#}?<|*6SCCPnCoGWmIv77S7v*Un&oDR4eBG z!oi{A5*XLy%hNWpb`qW6Ke!)OuaVdlOr4Q{iY#DfRo-qKbayl(pGlHjFgmY)NGvQ~ zRV<>IMZzyxc)@}`_37zg7vpHF#BOWHn_HWDIv%zc(CXZW%d^_fr+hVjKUn6@N_N)q z4|Vx&bSQ+(RWfZ+a!2S&mUdsc5a>xx1M($ZdL%>UxvV_#K`fMEzZ6P$gn~4}6FXX^ zD9PWBgH;>rd2+dwfaJ|P;yUHOg^&w$VZZ`1%XKZFJ0T0{KLagh>*LO;Ro^k->bD=j z85deLkEyNOT=E~To!yF5B!&70-yj99N5T7vzVWVHKcsiG^#l584+oji|VgrT7qQ2i@BK8Q)|Slx(PK2+Tt_14!^oB7JzCbQC#j{s z>9v@IQf=>dy43|^E&V-7YKxL1uN_!LxAvY!(y1=$Bl0nAjH)5GXhw7-IZ0Y4(#ScwKE^@fTtTsUgnUhB$89Dr)2{J0M3x&ri~Nr6iSJD+=-2U;VT4_D zl%kp)UfdyzQYUuZZ_@b*3-KInN%$SPD9kay`cTd_rz~UfYl1SgZ5LEa&&5;@D$CXFvF(y46BY z4QbYuPZi2agtDo0%g`nVF{y{Mw}z28M!Qc)(st0glah2A*aNr}*bD2n0>=V%$l3*r z1&%s}*np}pC8-ox30wmla2kGq@1BvQW5D^%um_4j9iDqffw926vywxygJ?Jl2f&BG zHNb)A-~i|Z9s^zgwgUTn1qXPZRsv&z56&Y1VCDtb15X0i0LNd1J@6Fp7|{C??14F# zCCPwC$MUO^lmz_hszZ`;Kn(v{lFEP-xE5&myCm%ZP6M6>CVeAG4}j$@k`&}E2$z5Z zfCbkiDG%uT4^#^H251@*bba_Q<8e%#!mTGl7;|hIBrW)A&8G~ zua*MS?n+WUuo~yM3HZ)^NooNGK9D2V!T&yOUj82A{t3OF2HViWLd zU=z^yJJN$idF#jn;Pzh&gZQSje|nydwg%Itbd5F&(?WV2hMAyh=(nJzgBn78tY$6i8slg`t4YiH z#vf?5)#SxG#}Ak2d~3M&4#;-gPEooDWE<_HyYU~X`3hMiI9H>`Mpl^Z$0wmkbj0Q_Gu^iZjZbk@+s76 z!_fnkOiMsr1tribo5|}LsNE0g7F#cE6x!D+dfb+wn+s|?8lAX#7U||ndL_=AZpa=& zG_Et*t5jsH%%&|wLucn0e7=A(8wcna5@N(#HLmjr90Rrl4g*>m8^b(C0g8$pwN+G( z(91c|LE)Gv^AGXeg^hs(9)r2ZLika{*YLW|#vQhvH|roO!9k02&8q%-T9O-1ZqQA+ z!^l|ImE1s5_<9-?#`6&67KS;gUyoC%FPSC~S+1%Zr7u~G$!g}UF5NGAB9!u&lB%xQ z@A5{>@_#SSO8t_4gINK!jg29n(0OC~kOy@A*#C*If>UERNx+}9%Ly16wC0SxOOch9oLgy$o?!kN@ zKExo=Z^oIze}XNm+7Vv}Fm5U!G~-a*jeR$%fan72S)67)jVS8gGgO|emi?FNyL6Zp z>mSh9i(eW<=B!rS zTrmlGTXt3~_?E-9fthMwFjXTFwz8pDK4hgb|d9u7d zA*fHJ1Fz3YqLvq2oP*8bfMs%E^oU#)X|=t_0!8MPz|25zI+iH0-xm= zaHa=%N>FT&54E?aAb)`qjUeKY!wXWx3o?sJlm29E`&p371qaMHDFbOzK?ZG@l518R zq_HljRCFrWGe-%+UxzR~SHqN(8b7~bU59s#F$R!8@AMubbxyx!OeASWb!Ywve19_x zpnFSwCDxrXqUj?~#%v_}jeofs~SNN^2o32Rr+G8EQz^Vj7-f)#v z=!t9G+#GeJyHy42(sUNxEdFN!ZBePAyUDeG!DNlW-6GV1r)MocC1@CWY z&_(WTNYkZaeV8fe`mW0BeIK08WC0)j#V7HkKvPy(UfMW1ft>H9+M#J2olE+tNn&Gm zE{RdAn)M1pH6f4_*Mqsrtj4>On92cjMqp*VX1v4jfpOB&k)Wjq2ADEJ9xy|{A$ zNlbQ^(cNi7(S4ZQ9-!#E+esAXUlIe#h=r^Xtqg973(JT(Kz?h7{xYsa#m!|Tglrf0 zK*{(Te#2t}&m(!f&$R}MWFdS^7n2tvy)c|iHvXu9aE@#B6H6e@+KHCOMuh@G8y7#{ zx9)NNIkW&a+`Z+FoVUNA5f8FOo5hE0(dU~&Z=6<^{e3ZV5ya;c6({o)5QcK`95I)P zRXnjQE*{0jPsJ)G&af!_W-gw_#e>9;Ay$1KFMhs=B$6ZIlSPPVn;2IP5XB;Z(W{SQ zREGw`#%*q!B5p2+YXjd^aOL5Ro6h2<;u$8c=bN{Ni^I5htw<`AidT?VjmHKl;)`5s zGS_Mp>nh-6Z-l~U-vHQH!o`oogK%Pe{&i+O7w;8)Dj|*^pjgQ-gdlfu@pLh_l7tLx z3sJ-?6cA2u@$=7;Q=IR4x`~@BNsPmNKiysQ8dv)?O7WM)%XW|RyC*69NX~!4`BS=e z)>okuvO0cbQuv>6eP7N$5i0Xv7iKDQp$8Wva|3ri37mhOKi=Qs`Y&<5yU88k{8X`O zF;4jyhyzq1f*~h@3lx~Z&HC_o`SuIbIKMVQ(PIxfHs*@g;Lhy*^e%){9o_~Eqf-i(a!mv2XN!HCFCDkx#fz7R*+^*`I3^d#`P;nGifYc zMT*sAop`*OSbQ|@iz1TMWN?7{-nh{&X00Zc0C#J3<3!QP*t=7d<=wcW@%U)6OlNBRIcZ~Fi*eM_9x9`in3^V)l=594DXBS5qn-J$v-iC|`p)mi`LDfRd+oK? zUi)0?c!0MtU`0AhZ|uD>C~>r+KZ%VeKS-(?DhBuBID_Di<2%^FxR)mvhCcmNPQ2q} z$4}XHH}__4r=ERknfQdu3JVClgsc&+6zr#t@yiA^D-_MxL8ztiD5PMopCap!x9?y%k~ z?MKpvoaih?@vgA^N{S#I4W*rqhVfpw#0;O2n-38>x!j@Q`3Ei3(Z#jz10uW&jeK}e z4BO31gOZ$QZ)qCr55u-ihGYCi(_Hx%9q!V@Zk-8#zX8wTLd0&0dcXIC7~gQ0LNEV@ zSjSO{#a()Xly=Zm@6(Iazd^45PJ@<@N*%7Vj>Q)f9j*m894?*{8szkn3psg?QTGAX zc-@a&&zmM6+ppOG%@uxsS@4I&*B*wi6Am}xz{E(YZZL zNQ+r#e0WDJALx6Lf8#<4@?T9l?Ez$Tr_Nfb12ZqCTurX`2i>bxdxw_8jaVqO#S6Sj z?VB`zEcssgE8n?y&i`XS=sfu=orK$-JALyzel`E~u5z)oePaGj%->1#yW=RO`@JKA zeNiKidR;E%KLr<7P4gv+HVIR>_8}W~M5Ax0R}EE^#S6|THN*AHE#4y%O-jG?^(oDP zk`#yeeSGT|7xPVBQ@Zc=k5fp!A!nDL5gE$QcTEZYr=RgXkF(y#R`K!HxWpH`=+3>4 zC3|XOP{-Kx=+z?=5vjh4$M{mK-TA`}O}kw!iKrGFx7yRRZK5!!+VF?HS+b`#P+!}H z0^+$9SN=7h(2ej>?)saQ-KEzsXvjI$2fK5cYFDq0({k|8hDNgBAP`%5VaC)Erj||6u z^m6@2&sBN=s)t2FX$=U7LhQUF>OmrES$+vnf(@ds?F8xd$GeL95*T{0oqEDM9s6^g zzGz{Dpna!WY@X;(m{&hw#M5crg;#eWWNs{wWVBE{_4~bBu4B4}oQ~dDw3phLzKsXu zUM>0Aw`R|w&^63(=o;TUAdAi{3-;*w+wa}L z--&-TDF{q={>=yT+vb0Pz)#b@4ibu3%zkfg-rM#P+v0iC*2H>*orCg{1ihZ#bpWay z_YF)x zpUQsb$LtksEx$i;Ovc1Gq^Ds}6#*t49HS@~(&`pmEUTr>L_du#5gH@;#>BVSHeQ^x zlG%Aj(n9+ivBG9*S3>Ag<<`v8*U~WP6}~w6ITpu%PJShF1-yE#mo)7{ij>yzH9e=W zLHt(Fx7lC#<`g&U;Db|>*g-xqwT_MRoJxI`v9r7&Z3JuKt~4i0_XMSvFxJK=_ujyA zR%Ya56{9nzp=rFG(UZ;PM>1*?6lyeB#9}(RXdjs(t<=2E@+p00v*-A+KCiM4&(nQl zj0vr1G~S5sH0@lyI5H<3i}x_Hf9<%w*IP4pumhf%SqY52;&e#sVWex1KCU-it`^7MTSl*)zd!hhp}LZ< z9?}H#<4pCtU9l0CiH_BrBgl;p$xqm;4Ho;9xa(jj#pG2X(cTRvXX+GVKWe z=ZJXoE|9<3OkR-N)BF%9H=mtrGgpC9c_XNL zP>1f{uU3LYX2~;s}f%z^_!B_bC{ABYPkSBQf=uwuwXdwz( zjmoC8NKf_X^gv!cx`3}9KbS>%TF2KJ*m7OOPcsvrQ5Y6vK+B+~gtxNTIDDup28C(` z9`Q_&(hR>*xKPPLhJ;ET|Ee%GG5`ZHo{C>K^qeM#@j^QpZiI9+eihTRl0h63NPWSe z^yL*rcJ{6QUdh)N4Q0zcr-~w2S@8(SYiUV%8U!e;X%#lrS~*2wy4=t>&RY2#2K7)d zH0Fk6Pr|KPN=k;tijc3?Vl?3o`e=Gc*6%QSl;;my(ZDr8a9le3&hlN%0Khw@PDU{Mkb@peG$G z`6TtvS!FEnC`HxxU7r1@&Dr-kJ-9Nf9$a5qv!Ssh|CE$Ed`S*#Otz&uPIL*)s1MAZ=T+A9@eCELo_Dk&uDcrrVMCOO#ZTyx+NYqF^CQAMh(C$ zi!RUahqzYcq}xj%C?MoS(iI_k8oTj@k0&|jf*(oBr)5>A`du6#7bKQ0gjpn263R{q zoeTFSGWA8K-)}HyO`<|g!mvyjnuK8??Nq=b-O2Q@AvMop69Yv>RN=EpU;XQJJVlw_ zFIRv2Sc&+Kdmfw=#GK*l;pnVfy?(vv^Ap!vHMd4#;eXL*a#-ii!EutKToFVp%9w93|+AP(8Y6G4fTY*+OGcK~A%UrV6X3R1oD0Q@@J!P-qiOB8W1| zrlbpHQYZwfWqqaq-%QHiU~5v=;)alUcv$A)DVw4^H2^l2z{Rl&A6)j}%8DYs?umf7 z%eR$BO6A>lG?hU-t8A1{X%uxek=bIY)I9~?I)h1RTg4$0Us)Bw+p5m;l*%Zbc2tJ& zwNnfDim4^^7q}IBV^Ah|K3@>bJlChWjPaJ&#~OnzW#=rBmU7G3tANIGgF#`e+LQZ& zm3jX3Orf#6ug%0*hFdZ%(=3?=BQ$8E4a)z(nT2_hW)~VmeFxtd!T$B7CCRg>hMVxu z%IFs|*h08_+?498wwUW%T521wwpd!qv#(k*vn@GroGE5@i!{zm4yQ%r@BG${u z(wnywu{5LMpj9voB@vQ19wSwrY92qCRCe2&ADK)x-JAbd#nzfwlv*@{MH|DEL?UA2 zeE;tig)H7iB|_QSyl4g+V`Q1lEzhuJ29}@}&0_OdmD)0kWyXgM5t_2oDpx>6C?U$p zu4+Uz>!0mQoUdcXql1vVI9%A3$mvof|BO1jnq@MsZXmd#wpKHHxc)s1#TTT~I+e|4 zvCN~!&1RW#6Z#1sxIXk}lhn#pD=aS@qiyz$dlnYQU>gx_wqST~0nDlG4XbvX5w*~Y>VbP?U)I}t2?=P&Ml}?68 zajp6eiLG*B1yVdtir-b+N&HBr;2)9VDN>xLhRzt* z0K|p&5=MJh6t7n+YedFt*qFF4 z?ib<{Qfso*`cVCmoa{>!eEMRiXPy+_Qj=;C;k{oU^sALZ*r(1Q@t}diYPSGoyA;n- z->GG>L$2dLC-mrF)xd*N>^r5tJK;0Q_uo`1dyb_!52WbUN`XwzIjNSICHP5_Pv6QE z)Xd1c^>0c34zxvj-jn))=yRlhJYMjp3Q!^?f0)o8?vJ~d6kL{9@lt8fU-EtZ%Xf?h z6CYoAk?dhLd>)G(G(jq6%LwJhDw8FDHU1Gx4_%n_Oanhrcd$sE4F{F4NX3qHp`iaP z0J%=`-+DmsF9=Y!Nd71CyiJsR`rN0b+Y<$2qvY>Y+4C$j?@KA3+fDF`rMN@#PvAdK z^w8Z+&n3zCwb9p`XFt!rH>>3fS!;8qleMzuU+UPCMihKyJsU5QB87Tcygf_j#Vp{G5dc3riA0E diff --git a/srcs/algo.c b/srcs/algo.c index ecafeea..255783c 100644 --- a/srcs/algo.c +++ b/srcs/algo.c @@ -1,11 +1,17 @@ #include "push_swap.h" -void hugo_sort(t_stack **a, t_stack **b, t_list **solution) +void hugo_sort(t_stack **a, t_stack **b, t_list *solution) { (void)b; - sa(a, solution); - pb(b, a, solution); - sb(a, solution); + + sa(a, &solution); + pb(b, a, &solution); + pb(b, a, &solution); + pb(b, a, &solution); + pa(a, b, &solution); + sa(a, &solution); + sb(b, &solution); + sa(a, &solution); } diff --git a/srcs/print.c b/srcs/print.c index 406f324..18f2721 100644 --- a/srcs/print.c +++ b/srcs/print.c @@ -15,14 +15,18 @@ ** a: nb nb nb nb nb ** b: nb nb nb */ -void fill_solution(t_list **solution, char *sp) +void fill_solution(t_list *solution, char *sp) { + t_stack **tmp1; + t_stack **tmp2; t_stack *a; t_stack *b; char *stack; - a = (*solution)->content; - b = (*solution)->next->content; + tmp1 = solution->content; + tmp2 = solution->next->content; + a = *tmp1; + b = *tmp2; stack = ft_strdup(sp); stack = ft_strjoinfree(stack, ft_strdup("!a:")); while(a) @@ -38,7 +42,7 @@ void fill_solution(t_list **solution, char *sp) stack = ft_strjoinfree(stack, ft_itoa(b->n)); b = b->next; } - ft_lstadd_back(solution, ft_lstnew(stack)); + ft_lstadd_back(&solution, ft_lstnew(stack)); } void print_result(t_list *result, int flag) diff --git a/srcs/push.c b/srcs/push.c index 8b67a8a..ad60a77 100644 --- a/srcs/push.c +++ b/srcs/push.c @@ -1,37 +1,28 @@ #include "push_swap.h" +void push(t_stack **dst, t_stack **src) +{ + t_stack *tmp1; + t_stack *tmp2; + + tmp1 = *src; + tmp2 = *dst; + *src = (*src)->next; + tmp1->next = tmp2; + *dst = tmp1; +} + t_list *pa(t_stack **a, t_stack **b, t_list **solution) { - t_stack *tmp; - - if (!(tmp = ft_calloc(1, sizeof(t_stack)))) - ps_stop(*a, *b, *solution, 2); - tmp->n = (*b)->n; - tmp->next = NULL; - (*a)->next = tmp; - fill_solution(solution, ft_strdup("pa")); + push(a, b); + fill_solution(*solution, ft_strdup("pa")); return (NULL); } -t_list *pb(t_stack **dst, t_stack **src, t_list **solution) +t_list *pb(t_stack **b, t_stack **a, t_list **solution) { - t_stack *a; - t_stack *b; - t_stack *tmp; - - a = *src; - b = *dst; - - if (!(b = ft_calloc(1, sizeof(t_stack)))) - ps_stop(a, b, *solution, 2); - b->n = a->n; - b->next = NULL; - - tmp = a->next; - a->n = a->next->n; - a->next = a->next->next; - free(tmp); - fill_solution(solution, ft_strdup("pa")); + push(b, a); + fill_solution(*solution, ft_strdup("pb")); return (NULL); } diff --git a/srcs/push_swap.c b/srcs/push_swap.c index 485093e..73f06dd 100644 --- a/srcs/push_swap.c +++ b/srcs/push_swap.c @@ -63,12 +63,11 @@ t_list *launch_algo(t_stack *a) b = NULL; solution = NULL; - ft_lstadd_back(&solution, ft_lstnew(a)); - ft_lstadd_back(&solution, ft_lstnew(b)); - fill_solution(&solution, ft_strdup("start")); - hugo_sort(&a, &b, &solution); + ft_lstadd_back(&solution, ft_lstnew(&a)); + ft_lstadd_back(&solution, ft_lstnew(&b)); + fill_solution(solution, ft_strdup("start")); + hugo_sort(&a, &b, solution); //bubble_sort(&a, &b, solution); - ps_stop(NULL, b, NULL, -1); return (solution); } @@ -91,6 +90,5 @@ int main(int ac, char **av) stack = init_stack(ac, av); result = launch_algo(stack); print_result(result, flag); - ps_stop(stack, NULL, result, 0); return(0); } diff --git a/srcs/swap.c b/srcs/swap.c index 77242f8..2bac144 100644 --- a/srcs/swap.c +++ b/srcs/swap.c @@ -1,29 +1,36 @@ #include "push_swap.h" -t_list *sa(t_stack **stack, t_list **solution) +void swap(t_stack **stack) { - t_stack *a; - int tmp; + t_stack *tmp; - a = *stack; - if (!a->next) - return (NULL); - tmp = a->n; - a->n = a->next->n; - a->next->n = tmp; - fill_solution(solution, ft_strdup("sa")); + tmp = *stack; + if (!(tmp->next)) + return ; + *stack = (*stack)->next; + tmp->next = (*stack)->next; + (*stack)->next = tmp; +} + +t_list *sa(t_stack **a, t_list **solution) +{ + swap(a); + fill_solution(*solution, ft_strdup("sa")); return (NULL); } t_list *sb(t_stack **b, t_list **solution) { - return (sa(b, solution)); + swap(b); + fill_solution(*solution, ft_strdup("sb")); + return (NULL); } t_list *ss(t_stack **a, t_stack **b, t_list **solution) { - sa(a, solution); - sa(b, solution); + swap(a); + swap(b); + fill_solution(*solution, ft_strdup("sb")); return (NULL); }