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.128546.128013.129300.1280732;eé6o/B+v-tTSdû0èR_U,çmàzrD):3Ig94%7GC][i15LMA=ay8k.(NOsj cuêwbphqPfnExl050u0i0r0$0V110.0:0;110$0.0.0#010r0V0_010406050.0=0D0D0$0G0%040t0l110=1i0l0~0:020$0D0_0h0:0y0i1s0G0{0=0i0.050m1p1r1t1v1n0_04051!1T1%0m1!1n0u0V0p1a1c1e1g1c0~0M0=0$0M0i0q0_0%0r0`1C0:0`0V0M0`11260`0r1l05150^110i1:1d1f01252729270r2f2h2d0r0G1#211a1y0.0_0$0~1g0g012j1=010}170i0~1G0i2d2B2D2I2l2L2h2O0D2Q040d0:0|0G0l0_0l0.0V1B1D132z0G0G0i0;2/1T2S0~1#0m212~2v2x2w2e0u2U1?0V0~2N2,2d1-1/1b2k383a0~0l3e2d0_2@1#2|2~3r1o2C1D3g2J3k0G1s112d0$242@0}1g030z0z0;3l0i293j0l0q0W3S1l0W1T0$3s3v1m3u2T3x2l3z3B3D3F0i3H013J3L3N3P3b3S0q2G040g3X3Z2D3#2|37013*0$3C1#3E0`3G3I3K3M133@3k3_0K1l0K3~2{3!1n423(1g454705494b3:4d3?393^3T0O1l0O4m1U3!1(3p1T3e310u2x364r014e2!121.1#3o0i3q4J4I40054U4#2T0V0u1g3K2|3_0W3,4-4/3=4f4B4h3T4?0:2Y0i4_4U4g3R4~2d0m3Y3$3w1;2l0)1l130}4n4(4q5d1g0@1l0:5j2}5b430~0}1l3M0.0r1q0i5r4+5c3h011k040+5D5t4S0~1l0G2D0M5L5l5G5I0B5D5q5U3y5x0l0=2h0=0G1S4%5s5!2l5I0I0J5D1n5-5E0:4^014:3v3_3{4v5{4.5}4`3O4|563`2H51534A3Q60583Y0:6j5Z3v5u1l0~5Y5M5m010l1l0#6q5/4s0^1l2X5T6m4S5I5K5_6r5G5O043M5(0i5*5,3t6y5H1l0I5@6D4,645~2D4i4@6!66556%502P6d4{6f3T4j2~6i6k6J5#04391-0;5C5_6l3%6s6u046w716`5:1l6H6S6E6s6L5Q1^6x7e5G750q7j735G0D0V3V6Y5F2J5;7o7v2l750P7y6n046p5_5^7d6Z4_4;4D6(6/676;0q4E6-2Z7P6+7N6@046k727z1g5f042@5A0G7G3r7$7E6N5)5+7u435I0U7^5N1l6}0V6 7|6s5I0T6X6I0m4*4K4!4M4X1T0r4P8e342 0$2g8b0m4N1Z5`4S2@0D0z0}0$0)0i0z0`6?1L1N1P1R0:5?871+1$040Y3E4Z7r0x2@1a220.2i0E500l0r0i0G0:0u2D196 0r0:0i108!0;802i1R8+1c8$0V0}0}0j2@0~6 8,0~2v2i2h0:7h0M8$0a0=1D2L1_7h8+140:110a7 900u9a1D0j110j2Z928$8(0:9b940V5z2i0J9i2i8O0V8!2z1r2N908W0W0B9E0:8U3M0~368W0w0*1(3#1!0!392-9P0$0p2^9i3E299B8$2i7=6P5+5q4*0U018l0=019P9|1@0;9 0:012)0=1|0185883N049P0.9k11500a0%0:9*168+8E0:0K0:9d5*2D0r199*9,2h1997199O0:0g8,8+asaB5{9U8;8)0l2?1R2+9Uaw198U5Q9H9u0w9P0WaIaG9R0l2.9-0:0p469@8$0=965R0:0Da+0~aE0*0:0-1D2+5*aY8+0u1C0;0:0_2NaX0:aq8^0G0jaT8U0:8W8^8E5z0V238?9R0V1H2h9t8+8H8J3e431@1_1{1}1 21232n282a2c8q6s2W2N2P1l0|20227.4J4Z5E3 5s89425|6#0~3`3U48637W68b+4 6c6554b:0g3U3-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~bY8c0p9!040c0:0Z16190^aZ9R0v8#6 8^3aatb72/dt2C190u0x19be2i3k0D0^8R2;au9f19br0_1z190M7h36dD8XdGdI9=5%7?0.a~9$a|0Vaf0V0:232@4Z9U8X192va+aPcw9^0U009}009Pd|a2d~0:00a71|000Ta_dkbd1Q9Q97a=at26av9ubr0(9)11aQ199j9l2iaXao0:0Qe99A2zd_0.0U0Qe83o0l0p0l8E5Q9xdt8!2@5*9_ad0L9U8-d,1Ad,0}a@1^704*a~b09R2N8+dm2Nebahat0$eW2@3M9K8 9Ie;8$0j0^eWen5+1P0a230ubh2k942ieeas0+eqaN900g0Ib95%dq9h8-1MdO8Varezd!a~0Laial3E130=10e:0C1Cdz2ieH0Vfk8^by3#bA4S0$0ua`0~2.bp1D8k5z5Q2_1l1Z43fOfQfS1C0q1i0r2t040La~0Adx8s0V8Q2i0$0_eF0;0`708J1!0ea 9ceue@2Zbsa-9/8Z9;d^d!0:0j15aZ8+1p8{9A1Gbw9i1C1_0i9)9+b8aLc:9^1Pd+bjbg0_0x8Z9u9D9Z8p2e8k2h1m7#6j2e2w06gO6_300Ygqecga9C8e0`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~1R8e4PhGhv360!0Y0L0R0,1g0S0 0,0s0 0y1l0whRhugUhVhXhZh#h%h)h+043W2 hShq8f0:hWhYh!01h$h(h*1l3}h}h/gPi0i2h?i5h^i8044libhTh:i1h=i4i6h_4Fh.inidh;i3h@i7h`0Xivh iyigisij0kiEhMipizihiB1l0QiLh6iGiriih`0(iThH325^2s8mg004d%2-fieP3k938,8.bu2i2;asgxdM8@f9a^0(0:0+erev0I9P239T5z0$gbf217e:0=0ub4fq0}d@g99Agb13gd9@197rbj0^5%8+8WjueWb28#jj3A9I9y9ijmes0=gl0.gne*gp1^ecjAamfG8#9bgf9rgobl9kfe2i0Q9Y1*dfdh1od?1^040S14gb0Dgg222;br4Bgl0;0$811Uj-0M7!9Dbq5zam9t0jbk1abgjEdtgZfigF1i3ObvjN2vdB0:dR2D2;j21s0M4B0Fg8eH0=ay9+kwdOkz9H6Qa_17298!fEeg9eaV6Wj)5^8o4W3f6sf$1Cf(fU0^fWj~bMf!fNfPkX2/f*2.f-0Lf/dij@3Nb9dP8,j|j~f df0H9w1100fmi@b9bg0;0j13929Pjdgk2Lb52id?0=9+8#aq9i00j3ew3MaR2B1C9Va-0D0?g7gxeb94lnj#0:0Wa~0|fj9Jd/jg9=2igze)b9f79P3kkzam11ena|2za|2v0=fHf80:i(e{1p1.aw8G5qkQgK8l3#210ifOl@gRg;9R0r0%2h1g8Z100r0q46260~9D0GbL0h1l0YjH8X3Aa:9;frjq8GhFl}5zm0cPm3m5m70Mm91ae*8!md047{4*e06P001T4*ht1n2ymqm11h8-mu2pmx6 92mA2dmEhx8 mHd94!mKmpl mOmtm6mS9DmU8Z0GmB4)ade4h10im#4*abh48h3#g`l_hS2eju0u1YgQl@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:bf0i0pgikajy1b9I1p8#aLnl0:a#lE9PaHe;159udJjkaq0~0j6 1e162@9P0;0a8?0q0E0q1-8R0/kzf28Wja8Z6}8R8^a/7?mki:8Rj3j28:j4a~j:ebd+b60~dt904U9vlYjV9G9I8Z1HnmgIkTbB5R1`1|1~bUbI2a2p2b2Rd32V2M51bSpPc,5sdc3t6Ib$6mcK4;0Kb,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(7A1l7nqtqq2ld0nI7HqCcFqE0q6?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)jCrkrf040zrU0lca39rU0~6A7*5RqicDre6Gqm6|j#qy045=86qjrvb*p.0X7Or3b:r|rE7Vr qO0qr}b|r8rBq{s6rcg}qYrghPri7?rY1l0orn3!c.c 7sq?d7rtqHb)sb0kr~rGr40qsyr2sAs0sCqQcWrLr9sxsdg:rR7~5iq/qdqZrhgxsk04020M0r0hsnc-c%r%6B2Nr=7cr,q:qvi{r=r@rsr_q_rw0q0QszrMqUs}sEs rCt1rKqSq1t4sNhjsp6Ksg8;si9@sXs%2}tc2Jrqr^s/rus`r{0q0(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~0b0:f;f_f{2)f}2i0^l_0=6N0_k^lU3.2Lj}6 9Pe-1A17gm9uj,2)j.a`0u5(0l2{k1dbdfdjeye-bgm70r0jj61D0~0a8N1d0:u90.a{mkuE9/9I8-dO802.1MjN8*gbo#95jRlhlj9Qjuruj#e%1D8s1t8E9P0r5%0/fjkAaAp2i?fogcfqi{lAl)5%epnkj#19o-0K9P0k9P0Nuk0r0;a~aX1C8+2k0l8:0j19jZj3o-u`lUo*vbo.0:0O9P0Qa$0wmye)eKa%fl5v39v7vzvahP190g9P0X9Pj014vlvKvoam1evr0Vvtka0gprp2k69j2*8}jafTa_3luvj10P912%p!fhlObajDb5f30^gFfHedvt5(159gb51CkedY2;eF2+0.k98%lY8^uQ1z2/j(i*e(baeW9LaQ2i2*1ijs9Iwr1yum1Cp01tg823umuU9Q01utuv2H230joYgb8^u(0iprl2v;3EwswJ1DlOdN2)wm0jw$gPl;1%6T1t2.0`1sm31l090+0Q0#aH09wE8Fas0olE09kP3ra~8M96bhfDes8!fxb7lm9q9sjN0ulChPlEl/m@dahfa3mIad9YdH0:0m1m0Yf98?i^94fx1.9Av_6P1b4-aZdt2;ew2C8#asbrlF0:fu9R00o{mb8+c%w{21w~8-x0x20:09v~0Kxc5Du;8_apec01ewwTenar2H8~fG2ix.x,w}jax=04x10Wx|5_wvn1kSfMkVt`kYt:k#fY9!t_t.fTk-f,2!0n172DpI1!0f0:0H00jF1sfRf^ko0jo`5Q2h9Pf00.1P00k5vpk8ka298RjFkfdJ0$fC3wfH0;5(o~gs1aw(m5p5p78=u=0id/l.8^2h2_5*f_a?f5e~lfjl9:f`0Gknl19*a+8#m;7ro`y?jd8vjzbb9I8WwP9Akda5y40ljOgreP2;z1jH01ylt*dekR14161804.