Aller au contenu

I. Modulo⚓︎

Distribuer des costumes pour un spectacle⚓︎

Question

La mairie d'une ville a décidé d'organiser un spectacle en plein air pour le 14 juillet. Pour cela, elle va faire appel à de nombreux figurants et distribuer à chacun d'eux un costume bleu, ou blanc, ou rouge. Ne sachant pas à l'avance combien de personnes vont se présenter, l'organisateur du spectacle a décidé, afin d'équilibrer à peu près les couleurs, de procéder de la façon suivante : le premier figurant arrivé recevra un costume bleu, le second un blanc, le troisième un rouge, le quatrième un bleu, le cinquième un blanc, etc.

couleurs costumes

Constatant le succès de la fête du 14 juillet, la mairie a décidé d'organiser d'autres spectacles de ce genre, avec distribution de costumes sur le même principe. Chaque spectacle a des costumes spécifiques.

Nicolas fait la queue pour recevoir son maillot. Curieux et impatient, il se demande de quelle couleur il sera. Il sait juste où il se trouve dans la queue (son rang) et les couleurs des maillots distribués (la liste couleurs).

Pouvez-vous l’aider à déterminer la couleur de son maillot ?

Compléter la fonction costume ci-dessous. Elle prend en paramètre rang qui est le rang d'arrivée du figurant, et couleurs qui est la liste des couleurs des costumes. Elle doit renvoyer la couleur du costume donné au figurant correspondant.

On garantit que la liste couleurs n'est pas vide, que rang est un entier supérieur ou égal à 1, et qu'on dispose de suffisemment de costumes pour tout le monde.

Par exemple :

Python Console Session
>>> costume(2, ["bleu", "blanc", "rouge"])
'blanc'
>>> costume(8, ["rose", "vert", "orange", "bleu"])
'bleu'

👉 Vous pouvez tester les ### en haut à droite de la fenêtre.

###(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 : 4/4

.8217.128161.128013.128546.129300.128073B+û;(gupx_dN:)rP%n32Ems6eTRjik79G04èA1w éIzM5=8yOthàê-,/LcaobCvlçfS.[]qDU050q0E0%0:0I0^0C0T0/0^0:0C0C0Z010%0I0n010406050C0m0B0B0:0u0#040{0;0^0m1i0;0x0T020:0B0n0j0T0G0E1s0u0 0m0E0C050-1p1r1t1v1n0n04051!1T1%0-1!1n0q0I0@1a1c1e1g1c0x0l0m0:0l0E0+0n0#0%0(1C0T0(0I0l0(0^260(0%1l05150=0^0E1:1d1f01252729270%2f2h2d0%0u1#211a1y0C0n0:0x1g0z012j1=010`170E0x1G0E2d2B2D2I2l2L2h2O0B2Q040c0T0v0u0;0n0;0C0I1B1D132z0u0u0E0/2/1T2S0x1#0-212~2v2x2w2e0q2U1?0I0x2N2,2d1-1/1b2k383a0x0;3e2d0n2@1#2|2~3r1o2C1D3g2J3k0u1s0^2d0:242@0`1g030p0p0/3l0E293j0;0+0R3S1l0R1T0:3s3v1m3u2T3x2l3z3B3D3F0E3H013J3L3N3P3b3S0+2G040z3X3Z2D3#2|37013*0:3C1#3E0(3G3I3K3M133@3k3_0y1l0y3~2{3!1n423(1g454705494b3:4d3?393^3T0O1l0O4m1U3!1(3p1T3e310q2x364r014e2!121.1#3o0E3q4J4I40054U4#2T0I0q1g3K2|3_0R3,4-4/3=4f4B4h3T4?0T2Y0E4_4U4g3R4~2d0-3Y3$3w1;2l0J1l130`4n4(4q5d1g0S1l0T5j2}5b430x0`1l3M0C0%1q0E5r4+5c3h011k040k5D5t4S0x1l0u2D0l5L5l5G5I0,5D5q5U3y5x0;0m2h0m0u1S4%5s5!2l5I0t0s5D1n5-5E0T4^014:3v3_3{4v5{4.5}4`3O4|563`2H51534A3Q60583Y0T6j5Z3v5u1l0x5Y5M5m010;1l0Z6q5/4s0=1l2X5T6m4S5I5K5_6r5G5O043M5(0E5*5,3t6y5H1l0t5@6D4,645~2D4i4@6!66556%502P6d4{6f3T4j2~6i6k6J5#04391-0/5C5_6l3%6s6u046w716`5:1l6H6S6E6s6L5Q1^6x7e5G750+7j735G0B0I3V6Y5F2J5;7o7v2l750w7y6n046p5_5^7d6Z4_4;4D6(6/676;0+4E6-2Z7P6+7N6@046k727z1g5f042@5A0u7G3r7$7E6N5)5+7u435I0}7^5N1l6}0I6 7|6s5I0~6X6I0-4*4K4!4M4X1T0%4P8e342 0:2g8b0-4N1Z5`4S2@0B0p0`0:0J0E0p0(6?1L1N1P1R0T5?871+1$040.3E4Z7r0P2@1a220C2i0)500;0%0E0u0T0q2D196 0%0T0E0o8!0/802i1R8+1c8$0I0`0`0U2@0x6 8,0x2v2i2h0T7h0l8$0a0m1D2L1_7h8+140T0^0a7 900q9a1D0U0^0U2Z928$8(0T9b940I5z2i0s9i2i8O0I8!2z1r2N908W0R0,9E0T8U3M0x368W0N0|1(3#1!0Q392-9P0:0@2^9i3E299B8$2i7=6P5+5q4*0}018l0m019P9|1@0/9 0T012)0m1|0185883N049P0C9k0^500a0#0T9*168+8E0T0y0T9d5*2D0%199*9,2h1997199O0T0z8,8+asaB5{9U8;8)0;2?1R2+9Uaw198U5Q9H9u0N9P0RaIaG9R0;2.9-0T0@469@8$0m965R0T0Ba+0xaE0|0T0$1D2+5*aY8+0q1C0/0T0n2NaX0Taq8^0u0UaT8U0T8W8^8E5z0I238?9R0I1H2h9t8+8H8J3e431@1_1{1}1 21232n282a2c8q6s2W2N2P1l0v20227.4J4Z5E3 5s89425|6#0x3`3U48637W68b+4 6c6554b:0z3U3-3/3;b^6fb`4?7Z797(5g3.825G5o7!c83y5w6M2,5A2Zcc7a5Jcj4s5P5Rcm6Uae7D7}cf6O6Qcq5;8H3r7I4Jb%6)4;b`613Eb(6*b_6a7U52b@6e3^cH2H4a3.4ccLc06a7Z7#c4017)7+5*bW407:cu9?cx6I6T7`cq7gcp786T7mct6s7r7tc=7k7w1labcB5Lac132~bY8c0@9!040d0T0X16190=aZ9R0i8#6 8^3aatb72/dt2C190q0P19be2i3k0B0=8R2;au9f19br0n1z190l7h36dD8XdGdI9=5%7?0Ca~9$a|0Iaf0I0T232@4Z9U8X192va+aPcw9^0}009}009Pd|a2d~0T00a71|000~a_dkbd1Q9Q97a=at26av9ubr0!9)0^aQ199j9l2iaXao0T0Ke99A2zd_0C0}0Ke83o0;0@0;8E5Q9xdt8!2@5*9_ad0V9U8-d,1Ad,0`a@1^704*a~b09R2N8+dm2Nebahat0:eW2@3M9K8 9Ie;8$0U0=eWen5+1P0a230qbh2k942ieeas0keqaN900z0tb95%dq9h8-1MdO8Varezd!a~0Vaial3E130m0oe:0_1Cdz2ieH0Ifk8^by3#bA4S0:0qa`0x2.bp1D8k5z5Q2_1l1Z43fOfQfS1C0+1i0%2t040Va~11dx8s0I8Q2i0:0neF0/0(708J1!0ea 9ceue@2Zbsa-9/8Z9;d^d!0T0U15aZ8+1p8{9A1Gbw9i1C1_0E9)9+b8aLc:9^1Pd+bjbg0n0P8Z9u9D9Z8p2e8k2h1m7#6j2e2w06gO6_300.gqecga9C8e0(gNgT5q309{9}9 g#g%gT2eg$a12Da35X2 g$gSg(g;04a65%a9g_30g|g:30a16Pg-g`g/gOg~g?8 hah4g(g)g=e52Qh3g{hjheg,hohcc$h72gg@hhhpg}h7hmaag.h56_2 gRh6hJhB4PeS6~1R8e4PhGhv360Q0.0V0M0r1g0?0A0r0F0A0G1l0NhRhugUhVhXhZh#h%h)h+043W2 hShq8f0ThWhYh!01h$h(h*1l3}h}h/gPi0i2h?i5h^i8044libhTh:i1h=i4i6h_4Fh.inidh;i3h@i7h`0Yivh iyigisij0DiEhMipizihiB1l0KiLh6iGiriih`0!iThH325^2s8mg004d%2-fieP3k938,8.bu2i2;asgxdM8@f9a^0!0T0kerev0t9P239T5z0:gbf217e:0m0qb4fq0`d@g99Agb13gd9@197rbj0=5%8+8WjueWb28#jj3A9I9y9ijmes0mgl0Cgne*gp1^ecjAamfG8#9bgf9rgobl9kfe2i0K9Y1*dfdh1od?1^040?14gb0Bgg222;br4Bgl0/0:811Uj-0l7!9Dbq5zam9t0Ubk1abgjEdtgZfigF1i3ObvjN2vdB0TdR2D2;j21s0l4B0Wg8eH0may9+kwdOkz9H6Qa_17298!fEeg9eaV6Wj)5^8o4W3f6sf$1Cf(fU0=fWj~bMf!fNfPkX2/f*2.f-0Vf/dij@3Nb9dP8,j|j~f df109w0^00fmi@b9bg0/0U13929Pjdgk2Lb52id?0m9+8#aq9i00j3ew3MaR2B1C9Va-0B0*g7gxeb94lnj#0T0Ra~0vfj9Jd/jg9=2igze)b9f79P3kkzam0^ena|2za|2v0mfHf80Ti(e{1p1.aw8G5qkQgK8l3#210EfOl@gRg;9R0%0#2h1g8Z0o0%0+46260x9D0ubL0j1l0.jH8X3Aa:9;frjq8GhFl}5zm0cPm3m5m70lm91ae*8!md047{4*e06P001T4*ht1n2ymqm11h8-mu2pmx6 92mA2dmEhx8 mHd94!mKmpl mOmtm6mS9DmU8Z0umB4)ade4h10Em#4*abh48h3#g`l_hS2eju0q1YgQl@36mNmsmQm-m8mamcme8Fer198H8fnal~mrm2nemvmTmzm=h,iv35nqm+ntm.mymVnxh{nzi0ncnsm4nfmwm/nwmBianoi%l|i$nAnLmPnNnunh2qnSlglInnn4nKm*ndn#nEm:mWiknJnbn/nMmRngnFm;mB4GimnYn{n!n}nPn n@iDo3hIl{npnZm,n$96niikn*ePn,ofo5ohn=nR1liKo3n.nro6nOnvnGmBiSown`oyorn~n?nHiZocnX2 n6n88jl?8pj:bf0E0@gikajy1b9I1p8#aLnl0Ta#lE9PaHe;159udJjkaq0x0U6 1e162@9P0/0a8?0+0)0+1-8R0Hkzf28Wja8Z6}8R8^a/7?mki:8Rj3j28:j4a~j:ebd+b60xdt904U9vlYjV9G9I8Z1HnmgIkTbB5R1`1|1~bUbI2a2p2b2Rd32V2M51bSpPc,5sdc3t6Ib$6mcK4;0yb,62cKb 3^p.b=6.cQ6:p?b{cVb}4zp{4hp@6hbN5G7)5hcqcal:7J7%44ce5ych70qc7_7bc^co7id27pd4csc{pVcncvd!cy6VcA4o7^p,5 p.cIb.p`7Qp|2GcOb/6fqFcU4xb~cRq2c!3~c$6T6Lerc~7l6vq#6{97q(7A1l7nqtqq2ld0nI7HqCcFqE0+6?p:6)p=qU4jqMqI6+p.r1p~cXq 3Rr5q4qXqu447~j#3=d_q+1g75777/c%q=h-q@qp1DqD6$p.4Eb-p;qTra7S6bp_q0qJqU7Tr74ycYp|ryqW6_6T7)jCrkrf040prU0;ca39rU0x6A7*5RqicDre6Gqm6|j#qy045=86qjrvb*p.0Y7Or3b:r|rE7Vr qO0+r}b|r8rBq{s6rcg}qYrghPri7?rY1l0hrn3!c.c 7sq?d7rtqHb)sb0Dr~rGr40+syr2sAs0sCqQcWrLr9sxsdg:rR7~5iq/qdqZrhgxsk04020l0%0jsnc-c%r%6B2Nr=7cr,q:qvi{r=r@rsr_q_rw0+0KszrMqUs}sEs rCt1rKqSq1t4sNhjsp6Ksg8;si9@sXs%2}tc2Jrqr^s/rus`r{0+0!s~sLp.tut2twttsIp t3sbtuc#rQrec)14c+r$5$eAr=7{sucuertg5*r=d6qB87891*4L8n4XkRt)pJk)f%2/amk!2vk$fZ1$f#k*fRk,f+k/k:a~0b0Tf;f_f{2)f}2i0=l_0m6N0nk^lU3.2Lj}6 9Pe-1A17gm9uj,2)j.a`0q5(0;2{k1dbdfdjeye-bgm70%0Uj61D0x0a8N1d0Tu90Ca{mkuE9/9I8-dO802.1MjN8*gbo#95jRlhlj9Qjuruj#e%1D8s1t8E9P0%5%0HfjkAaAp2i?fogcfqi{lAl)5%epnkj#19o-0y9P0D9P0Luk0%0/a~aX1C8+2k0;8:0U19jZj3o-u`lUo*vbo.0T0O9P0Ka$0Nmye)eKa%fl5v39v7vzvahP190z9P0Y9Pj014vlvKvoam1evr0Ivtka0zprp2k69j2*8}jafTa_3luvj10w912%p!fhlObajDb5f30=gFfHedvt5(159gb51CkedY2;eF2+0Ck98%lY8^uQ1z2/j(i*e(baeW9LaQ2i2*1ijs9Iwr1yum1Cp01tg823umuU9Q01utuv2H230UoYgb8^u(0Eprl2v;3EwswJ1DlOdN2)wm0Uw$gPl;1%6T1t2.0(1sm31l090k0K0ZaH09wE8Fas0hlE09kP3ra~8M96bhfDes8!fxb7lm9q9sjN0qlChPlEl/m@dahfa3mIad9YdH0T0-1m0.f98?i^94fx1.9Av_6P1b4-aZdt2;ew2C8#asbrlF0Tfu9R00o{mb8+c%w{21w~8-x0x20T09v~0yxc5Du;8_apec01ewwTenar2H8~fG2ix.x,w}jax=04x10Rx|5_wvn1kSfMkVt`kYt:k#fY9!t_t.fTk-f,2!0g172DpI1!0f0T1000jF1sfRf^ko0Uo`5Q2h9Pf00C1P00k5vpk8ka298RjFkfdJ0:fC3wfH0/5(o~gs1aw(m5p5p78=u=0Ed/l.8^2h2_5*f_a?f5e~lfjl9:f`0uknl19*a+8#m;7ro`y?jd8vjzbb9I8WwP9Akda5y40;jOgreP2;z1jH01ylt*dekR14161804.