Aller au contenu

Suite audioactive de Conway⚓︎

Dans la suite mathématique Look and say, inventée en 1986 par le mathématicien John Horton Conway, un terme se détermine en annonçant les chiffres formant le terme précédent.

\[\begin{matrix}1\\11\\21\\1211\\111221\\312211\end{matrix}\]

Explication :

  • à partir de \(111221\),
  • on lit \(111\,22\,1\),
  • soit trois \(1\), puis deux \(2\), et un \(1\),
  • d'où \(31\,22\,11\) pour la ligne suivante.

On peut vérifier que la ligne suivante est \(13112221\).

Pour simplifier le code, on va modéliser cette suite par la liste des chiffres.

Python
LIGNE_1 = [1]
LIGNE_2 = [1, 1]
LIGNE_3 = [2, 1]
LIGNE_4 = [1, 2, 1, 1]
LIGNE_5 = [1, 1, 1, 2, 2, 1]
LIGNE_6 = [3, 1, 2, 2, 1, 1]
LIGNE_7 = [1, 3, 1, 1, 2, 2, 2, 1]

Écrire une fonction telle que conway_suivante(ligne) renvoie, sous forme de liste, la ligne suivante après ligne. Ceci pourrait permettre de faire des appels récursifs.

Exemples
Python
>>> conway_suivante([3, 1, 2, 2, 1, 1])
[1, 3, 1, 1, 2, 2, 2, 1]
>>> conway_suivante([1, 3, 1, 1, 2, 2, 2, 1])
[1, 1, 1, 3, 2, 1, 3, 2, 1, 1]

Il y a deux versions de cet exercice, vide ou avec un code à trou.

###(Dés-)Active le code après la ligne # Tests (insensible à la casse)
(Ctrl+I)
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 : 5/5

.9875.128013.65038="_e+y3qdRuàéxEgPvr08-èDêfbco/m]h(aÀpl)7,['n sS:j6w 1ki.9Ot25V;4030f0a0%0F0Z0I0Q0P0y0I0F0Q0Q07080%0Z0H08020W030Q0h0B0B0F0p0c020R0z0I0h0 0z0O0P000F0B0H0*0P0g0a190p0e0h0a0Q030A16181a1c140H02031H1A1K0A1H140f0Z0o0@0_0{0}0_0O0m0h0F0m0a0s0H0c0%0D1j0P0D0Z0m0D0I1/0D0%12030/0x0I0a1T0`0|081.1:1=1:0%1{1}1_0%0p1I1*0@1f0Q0H0F0O0}0'081 1V080w0;0a0O1n0a1_2h2j2o212r1}2u0B2w02050P0n0p0z0H0z0Q0Z1i1k0-2f0p0p0a0y2R1A2y0O1I0A1*2%2b2d2c1`0f2A1W0Z0O2t2O1_1Q1S0^202:2=0O0z2_1_0H2W1I2#2%36152i1k2{2p2 0p190I1_0F1-2W0w0}0109090y300a1=2~0z0s0'0s0X120P0X1A0F373a13392z3c213e3g3i3k0a3m083o3q3s3u2?3x3x3B0'3E3G2j3I2#2/083N0F3h1I3j0D3l3n3p3r0-3X2 3Z0d3B0d3%2!3H143*3L0}3-3/033;3?3T3^3W2;3Y3y0+3B0+411B433J3b1U3M0z3f3.3P3=3R3@3V3`4g3|3y0(3B0(4m36443a3+484w4c3U3_3t4C3w3y0U3B0U4I4o454r474t3O3:3Q3S4Q4f3v3Z0K3B0K4Z3(4K3K4$3,4'4v4)4x4+4e4B4.3y0r3B0r4?2$4^4q2|4{4u494b4y4d4A4S530s0#3B0#583)4L465d4(4a4*4z4R3{4U3z0q120X0q5q5a4M4|5f5x5i5z4T3Z0X3A025R5H4p5J5e4O5h4,524h3z2m5T3$0A3F424@5W5t4N4~4P515k5%0X3~5T405+3'595/4`5;5w4 5y4-5_4j5T4l5~5-604#5c635g505j5A5Q4F5T4H6c4n3(1L341A2_2)0f2d2.5t4R2^1R1I330a353H6d1I4R6I2z0Z0f0}3p2#5Q3P6P6R6k5P3y3A0P2E0a6X5O5l5S416f2p0Y120-0w6K0P616g0w123r0O0V0F0c09161R2j0%0a6K6^2p11020E776-3M12252=7d5s4`7a0J0S6K146r2$5W6W086S3a3Z5(5w7u5@6l3y2m6$2v6(674D3!2%3F0P7O6@7e47126G0y0a0-0O0%6?78210z12077!7R3,7g1/7i7r6N5b79120M7j4_5c0B0Z125G7/7#0}7a0C7p7^1k7B717x3y5{7A6Q7v6Y5l3~7G2F7I5$7K8b5~7P7Q7k6g120O0x3V0O0Q2X1h0Z0w1z7/8q7_2p7%027(8E80087{7}847 3*876T4i6V8d7C6Z0s4j8i6'8e6)5%693%8p8M0O122W160I0/7Z8L7*8I8K368F7;217a0M837/7q388S8X882j3Z6n8c8k5^7K4F8$9d7D0s9b8o7P8M6/020w4t7)8r3d6{1.0w0w2W9t8G7$0V122;9B8~7S027h768R9u8 127o93850P8T890s4W4)878(7K4W9h8'7J5B9Y8+8p9n7*9p8B9H4M9w8B9z9M8|8M8`8{3H8}9?027U7W2t8@959O819Q8Qa76O978U0s4:9Z979#5B4:9'8Y5lah9,9-9-8-8t8v6|8y0y8A8C9=5t8I0b9~3(a05t8O5Tab6J966Xaf55ai9i8Z55an8f5%aRarat9/123t8y9T5t7a9R4J9T9V993y5naS9(8l5B5naWak3Za=a!as7Oau028:0h8=0Fa6aNa8088I0!a)62120F0H0H2t0fbe5c7a7c9N9C9J8u8wayaA8Dac9I087maM6saO8eaf5F8WaT6*5Da{9)5Q5D7M02b0a#ba8.b31yb58?bm8H12bdbqbzbVbhbj0Oblb'3+bob!7fa22W7V7Xb8bDbabB9Sb.a/0O5Q6+3j9!bN6!6#6%bJ5_6+9mbSb17*bVa3b_aC4`8`ck8s020y9x9_bC7sbE7wa:5'bIa@9e5B0X7Fc9cA9jcD1_cdceb2btax8z0 aB8^bacmcSbr8N7|aLb~by9Uae9W5`czao5_8hcFc*7Kc(bQ8,cg8/bXb6b`cucTb$b;9Jb*bkc~bA12bpc#5:avbucP8Bbxb9cWb}a-b c%cx0X8*c4ajc63z8#c-aXc/8*cKb2b4c_d2bcd2b)bid1b.a*d4dB7Tb@a47Yd2df4odhaPc'9bdmcac/9gdra|6!9l7N9.ba9p2W0%0h0p0Ocn9vbW8;bZc!6J0A6M6t6H6v6E1A0%6yd~2,2'0F1|d{0A6w1G7:3+2W0B090w0F0Y0a090D5{1s1u1w1y0Pa,d@1O031f3I1=020$3b0z1o0I0t756@4R3+1X1Z1#1%1(1-1?251@2xd'c@d*d,d.b=dxd=38d^3sbR0i0P0_0P2r0O0Le)7-1~0X0(e.0y0N1y0%e)3j1=0QeF0-0?2 0h0o0a0F0h0k0@cr8:0!0P0l0I1}0P8y2f8x2b0h2Q0P2i0p0P0F0yaz0Bb5b70Z1je.0.0P3tfhe`9U0O2Q0Z3.0Z0Q0j1~0o6P1~e(e*9L0P0+eG3seI2jeK1$1'0ceO241?1^ead7d:bYb7eX0}cU9{7*9092e#6Mb%ex14ex0Gfa0Feog31Y1ta50P2Tcq9^2W0L03b5ew0Z021,0F0T0z1hfSe|e/e 1~0f0Ne44t2.e*1w742Q0jfY0-02cN1jbvcQ8D6Me.0Hfn0?fhgc9y2WgF6Hcia51Af}fe1k0Q4t0 gu1~0xgo0^0ae.gl0mfo3r181~0Q0N0;0Pf(0F0o0:e{cqf#g87Yf~gjg0gjez0P2Fe{e(gnd+gWb?2XdLe{07fagd9MgNfDe{036MgI8xda8C0Phn3De$gGfDeA1o0/7Y0@1~gT9_0P0T0hgt0P0o0hfdhbec1ag51w0NfTe}e:0P0dg:1k0Ogwh0fo2i0?2t3rgVhTe)1~6G7{0afrhMgega1j0ye)g{fI0 fL0Qfy1,0j0/foe(0qh73I0Agh7qf 03ex0R0Zh_hogU1~fGfh0B0v2Fh*fH0y0p0j2F7Y1~hue%hwgKdbg!e%gae;ih7qev140D0Xc$0}f50p2P1j0s9r0O2Yfz0O2=fg2G0)h}i#1ki'i)1ji,1}5w5t0Df60-0p3u6/5M01iZi;i%i22Ri_2w0P0 0%1}0}0nh}192~e{j11204064miV3I1H0u2jgR1~0B30b5iH6M2Qh}0%0z2giNgGe.g|g~0P0h2=e+j8i*hi0m2L0h0H0x0cjI6H0P1wiqbj3ffC2T2WjUgoj(fp1ae)0z0%e.0fjvjN860%0j0pe41}e.1}0?75j)0?ax0jazgLc$a50Zeo0Qb%et2_f!1Y1!f%1(1*1,231;f+eScW2C2t2v120n1)1+d-7 6G7:5 6Le%7tdic10d3zc)ds3wkNc87HcG5PkS2n655NbNkXbQ9obV9zeBf=3,bVjD0pjFjHcVbz0Yk-1og(k+bVj-jWjYcteac00skN7zdUkV4.l42ndYk#3!j3c.kR7L3%94dd86kLl3l3kPa|kNc,kUlfln8hkZ5#cBlvcJ5,a$026;k{6`cp1j6~7072h0iGdNdHdFbf9Ke:lP027nl0kKdR99kNdliXl73Yl$laltkQln8#lxlul*c;d%cWbVeZf;k=3+f@9 8Mf`lYcv98kM9klplcdXl,lqm6lel-kNd#bRl@k?129r0pk{12jycQlVgfl|f.k.k09`l 8_9E029GmtlSk}jXjZlRbnlQd6lS9LlVlXd?b{adl!m59+l6l;9Xl+8jl(3|kN9%l:memYl?asdwc^e!lkl}c}mId/d0b,lVd5m:5:0x121Cm`d2aKhCf^eT9q9smDcoh mxaH9|mAmCn5l^9Fk5mwmO0Jm24Ll2kNaqmWm)amlba^lnamm(mbaqcKc=bUc@d;l{mL5cdAm?b=m^b-nJ7=7bdI02mp9;nMa9lWnomSbF7xkNaZntmbaVnwlzn'kY5?m)aZdvlDd)d+kDnhb(nGf:c`iif|kJ1N6ue76E7q0-id0=02.

###(Dés-)Active le code après la ligne # Tests (insensible à la casse)
(Ctrl+I)
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 : 5/5

.9875.128013.65038="_e+y3qdRuàéxEgPvr08-èDêfbco/m]h(aÀpl)7,['n sS:j6w 1ki.9Ot25V;4030f0a0%0F0Z0I0Q0P0y0I0F0Q0Q07080%0Z0H08020W030Q0h0B0B0F0p0c020R0z0I0h0 0z0O0P000F0B0H0*0P0g0a190p0e0h0a0Q030A16181a1c140H02031H1A1K0A1H140f0Z0o0@0_0{0}0_0O0m0h0F0m0a0s0H0c0%0D1j0P0D0Z0m0D0I1/0D0%12030/0x0I0a1T0`0|081.1:1=1:0%1{1}1_0%0p1I1*0@1f0Q0H0F0O0}0'081 1V080w0;0a0O1n0a1_2h2j2o212r1}2u0B2w02050P0n0p0z0H0z0Q0Z1i1k0-2f0p0p0a0y2R1A2y0O1I0A1*2%2b2d2c1`0f2A1W0Z0O2t2O1_1Q1S0^202:2=0O0z2_1_0H2W1I2#2%36152i1k2{2p2 0p190I1_0F1-2W0w0}0109090y300a1=2~0z0s0+0s0X120P0X1A0F373a13392z3c213e3g3i3k0a3m083o3q3s3u2?3x0s2m020P0'3E3G2j3I2#2/083N0F3h1I3j0D3l3n3p3r0-3X2 3Z0d3B0d3(2!3H143,3L0}3/3;033?3^3T3`3W2;3Y3y0+3B0+431B453J3b1U3M0z3f3:3P3@3R3_3V3|4i3~3y0(3B0(4o36463a3-4a4y4e3U3{3t4E3w3y0U3B0U4K4q474t494v3O3=3Q3S4S4h3v3Z0K3B0K4#3*4M3K4'3.4)4x4+4z4-4g4D4:3y0r3B0r4^2$4`4s2|4}4w4b4d4A4f4C4U550s0#3B0#5a3+4N485f4*4c4,4B4T3}4W3z0q120X0q5s5c4O4~5h5z5k5B4V3Z0X3A025T5J4r5L5g4Q5j4.544j3z3#0X3'0A3F444_5Y5v4P504R535m5(0X405V425-3)5b5;4|5?5y515A4/5{4l5V4n605/624%5e655i525l5C5S4H5V4J6e4p3*1L341A2_2)0f2d2.5v4T2^1R1I330a353H6f1I4T6K2z0Z0f0}3p2#5S3P6R6T6m5R3y3A0P2E0a6Z5Q5n5U436h2p0Y120-0w6M0P636i0w123r0O0V0F0c09161R2j0%0a6M6`2p11020E796/3M12252=7f5u4|7c0J0S6M146t2$5Y6Y086U3a3Z3#5y7w5_6n3y2m6'2v6*694F3!1_600P7Q6_7g49126I0y0a0-0O0%6^7a210z12077$7T3.7i1/7k7t6P5d7b120M7l4{5e0B0Z125I7;7%0}7c0C7r7`1k7D737z3y5}7C6S7x6!5n407I2F7K5'7M8d7P7R827-020O0x3V0O0Q2X1h0Z0w1z7;7S7m5e7(027*8F8s7}7 86813,896V4k6X8f7E6#3x2n6(8m5`7M6b3(7R8G7{3d122W160I0/7#8M7,8J8L368,7?217c0M857;7s388S8X8a2j3Z6p8e8%7F0s4H8k6)8g6+5(9b8q7Q8s6;020w4v7+8H8.020y1.0w0w2W9u8-7'0V122;9D8~7U027j788R9v8 127q93870P8T8b0s4Y4+899k7M4Y9h9d8Z9!8*8+8r7,9q8C9J4O6}9z9B9O8|8s8`8{3H8}9@027W7Y2t8@959Q839S8Qa86Q978U0s4=9#979%5D4=9)9j7Lam7O3F9.aua15=128v8x8z0y8B8D9?5v8J0b9 3*aw4|8O5Vac6L966Zag57aj9*5n57ao8YaXas3$av9p123t8z9V5v7c9T4L9V9X993y5paVap8n5D5paZ8h5(a^9-av9/a98t8:0h8=0Fa7aQb58J0!a,64120F0H0H2t0fbg5e7c7e9P9E9Laz6~aBaD8Ead9K087oaP6uaR8gag5H8WaW5{5Fa~al5S5F2%atb3b4btb61yb88?bo2pbeb#7h02bjbl0ObnbsbBbqb'9La47ZbbbFb5bD9Ub.9Waf9Y5TbKa`8'5Dc1bOaq5S6-9nbU8s0O7V2W7Xb@aF4|8`cj6i9^8C9`bE7ubG7ya?5)c2a!5{7H8$c39e5+a$bUbVbBce8u8wbw8A0 aE8^bd7)cm2paN3Db|bAb~aSc08d3j9$c86$8jcBcy7M5|cFcHa2b7b9b^cscR02bfb}axb)bkbmb;bC12brcYc}bv1jbxcObzbcbWb{a:b}a=0O5S8)c%akc(3z4lc7a{djc/9o7,cJc=b!c|ck12c{d5bhc~b+b-dDbpd3d1cJb?a6d1de4qdgb cv0X9bdlbLc-9gc+a dZdtaL5e9q2W0%0h0p0OcTb(dxbacr2%6O6v6J6x6G1A0%6Ad~2,2'0F1|d{0A6y1G7=3-2W0B090w0F0Y0a090D5}1s1u1w1y0Pa/6L1N3I1f3I1=020$3b0z1o0I0t776_4T3-1X1Z1#1%1(1-1?251@2xb5d*0.d-d/cQbWdwbYc?790A6O0P0i0P0_0P2r0O0Le+7/1~dVe:0y0N1y0%e+3j1=0QeF0-0?2 0h0o0a0F0h0k0@9_8:0!0P0l0I1}0P8z2f8y2b0h2Q0P2i0p0P0F0yaC0Bb8ba0Z1je:0.0P3tfie{9W0O2Q0Z3:0Z0Q0j1~0o6R1~e*e,9N0P0+eG3seI2jeK1$1'0ceO241?1^eac}d=c@3$9}cSeYb/7^9238e'3sc`1Aex14ex0Gfb0Feog51Y1ta60P2T9ycp2W0L03b8ew0Z021,0F0T0z1hfTe}e;f01~0f0Ne44v2.e,1w762Q0jfZ0-cKaAcN8C8E6Oe:0Hfo0?fige9A2WgH6JdN7!1A6Ofe0l1k0Q4v0 gw1~0xgq0^0ae:gn0mfp3r181~0Q0N0;0Pf)0F0o0:e|9yf$ga7!c{g103exez0P2Fe|e*gpd-gXa3cga57!0P07fbgf9OgOfEe|036Od78ygL8Dhp3Cg#f~fEeA1o0/ho7XhrgV1~0T0hgv0P0o0hfehdec1ag71w0NfUe~e=0P0dg=1k0Ogyh2fp2i0?2t3rgWhUe+1~6I7}0afsgU9`e:0f1j0ye+g}fJ0 fM0Qfz1,0j0/fpe*0qh9gl7sgj7shaex0R0Zh`hN9`fEf0is0B0v2Fh+fI0y0p0j2F7!1~hxf~hzd9gMhFgIgce?ij3I0Aev140D0XcZ08f60p2P1j0s9s0O2YfA0O2=fhei5U0)h~i%1ki)i+1ji.1}5y5v0Df70-0p3u6;5O01i#i@i(i42Ri|i:2n0 0%1}0}0nh~192~e|j41204064oiX3I1H0u2jgS1~0B30b8iI6O2Qh~0%0z2giO6Je:g~h00P0h2=e-jbi,hk0m2L0h0H0x0cjL3$1wirbl3ffD2T2WjXgqj*fq1ae+0z0%i2jyjQ880%0j0pe41}e:1}0?77j+0?bw0jaCdab~a60Zeo0Qc{1O0,1Rf#1Y1!f'1(1*1,231;f,eSbW2C2t2v120n1)1+eX386I7=616Nf~7vdTdi0(3zcxd$3wkP6%d#bPkU2n675Pc8kYbSf.4|0YcJ9BeBd:49cJjG0pjIjKf^3-k*9H1og*k.8tj/jZj#d@kMc!99kP7BdXcC5Rl78#7Jla4:lcj6c,kT7Nk'94dc88kN9f0sc$iZljlrc*lelvkP8jk!5%c4lwa$a(026?k~0O6|9x1j707274h2iHdPdKdzcn9Me=lU027pl3ct98kO8!a_lz8!dqlEkPdplCl,8)cbcd8/e#dy9|8_f@l}b`f`l%4NdhlrdWlukSm6ld8llf3YkP9gl=m9mfd'lH9s0plK12jBcOl!ghk^c}k;k19{a09}9G029ImudEl0j!j$lW7@7ddL7.0m7:dImKl$cXlom86VkP9,l9l,9(kWk$9ZkZ5^mim'k'b3l_02f:d1b%mJb(b*d0m?aamLm`3.0x121Cl!d4mU5vcVk~9qmmmo9xfcmyaKmA9HkFmzdv9Hk6mxl!0J0Jm3ael5l)ai9cmd3~kPanm$drnym(5$l,nucb8+m.m:m}m=mQm@c b,n2mM02mq9=m}dQ5:dSnslraUnvl,aYnAl/0saYmhkXn+mk9:l`d,d.nanKdff|d_1N6we76G7s0-if0=02.