Partition de tableau

Écrire une fonction partition qui prend en paramètres un entier pivot et une liste d'entiers tableau et qui renvoie un tuple composé de trois listes :

  • la première liste contient les indices, dans l'ordre croissant, des valeurs de tableau strictement inférieures à pivot ;
  • la deuxième liste contient les indices, dans l'ordre croissant, des valeurs de tableau égales à pivot ;
  • la troisième liste contient les indices, dans l'ordre croissant, des valeurs de tableau strictement supérieures à pivot.

Exemples

🐍 Script Python
>>> partition(3, [1, 3, 4, 2, 4, 6, 3, 0])
([0, 3, 7], [1, 6], [2, 4, 5])
>>> partition(3, [1, 4, 2, 4, 6, 0])
([0, 2, 5], [], [1, 3, 4])
>>>partition(3, [1, 1, 1, 1])
([0, 1, 2, 3], [], [])
>>> partition(3, [])
([], [], [])
###(Dés-)Active le code après la ligne # Tests (insensible à la casse)
(Ctrl+I)
Entrer ou sortir du mode "deux colonnes"
(Alt+: ; Ctrl pour inverser les colonnes)
Entrer ou sortir du mode "plein écran"
(Esc)
Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier
Évaluations restantes : 10/10
.128013fe)61i_p3m:Svk(5rtg.=swcd;,Po/]ha2n bl0[948uy7050z0c0s0H0g0M0w0K0y0M0H0w0w0v010s0g0i010406050w0S0k0k0H0r0T040m0D0M0S0/0D0J050E0_0{0}0 0@0i04051f181i0E1f0@0z0g0n0%0)0+0-0G0g0t0G0M1w0G0s0=050Y0L0M0c1r0*0,011v1x1z1x0s1F1H1D0s0r1g0s0G0%120w0i0H0J0-0I011J1t010b0!0c0J0H0k0c1D1$1(1-1L1:1H1?1^0=0a0K0C0r0D0i0D0w0g150J0K0W1!0r0r0c0y2d181{0J1g0E1Y2q1V1X1W1E0z1}0-1z0J1=2a1D1o1q0(1K2A0g2C0J0D2G1D0i2j1g2o2q2U0^1%2e2I1.2N0r0|0M0=0K0f2n2Y0?2X1|2!1L2$2(2*0I2-1(2/2o2z012@0H2)040K0j2{2p0@2~2=0-31330K0Q372}2Y2 3d2*0q3h393j3b300D2%322*0e3o2:2Z1s2?3t2^340U3y3a3B3c3D3v340R3H3q3J3s3u3e0P3P2;3R3l040f0N3W3A2J3S3E0f2,192.3p3X3)3Z0f2`3.2|1j2S182G2t0z1X2y3r0y2O1_1g3~1h3|2W3_2p05440W2T3Q3)0o0=0W0b3h3z2 0x2*4o3I3=0b0=1%0r0/2m4c4h3;1.0;040p4t4i2#4x1p0D0s4J4E1L4G0B3h0K4p3r0J0=1S0c0H0S4Q3(4F0=0d0l3o0K4:4W4u4L042L1o0y0c0w0h2L0b0c0r0g0c0S0r4V4X3R0D0=0v574?4S0=0O0F4/4;583=0=4_0g4{4}0c0t325d4K1L5a045c4C4=5w0-4G5h5j4:5l4@5o5q0h0_0i5153555v4R0-5y5A2U5C5U015F5i4C064;5Z4*1L4k040b3t5T5,3c5n5=2 0D4r4^175B5J2?0L0=0r1(0t0c4)2 4G4I4C603c620420683r6a6i3Y4!0H1G4$4(6c5e5E4,4-5H5*5+2 5.0g4n5 6t306n6p4%6l3)5F6K5K6N5f045%5Y6d015y020M0s0A5_4Y4M0n4O6P6u044.5(6y6/6z6$5}4`4|4~0J505254566s5D6V0=0u6*6G040H0i5P0J0z746k6 5!4Z4^7c4,6x5*6U5.0c1z6D6T6F7g4#6J7e5?5#5g747g0g7i6R6#590=020t6Z7F5m040i4N4P7w690=6-2U5)6:7l7s5n7a5p6^5O5Q6}745y737R6=77797b7.3R7d2W7Z7h7?6L7j6.6:7m0=7o0w677|4+6,7k807`5L6^5s5u865x727A0=7:1=7=7_707^2.6U7B7D0d6x81042j0s555~7r8p0=6b8o7f7!6@4}4 7)5S8g6+4U6E707B7#5M8e0M7D8R8D8I6?7$4}7(6|8O8H7x4G8v5(184f0c2q2R8@3}1p3 2t2w2r6o1H2q3~0@0E0W0Y0!0w04.