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.128546.129300.128013.128161.1280736]UO12znIûà/P=:r9éj(A[D_)ptTgyo; uc5ldmBê.f,iLCw+vè4%7MRbGsxaNqkçe0h3S-E8050R0`0G0=0Y0Q0:0M0O0Q0=0:0:0t010G0Y0F010406050:0N0S0S0=0v0J040~0K0Q0N1i0K0n0M020=0S0F0L0M0-0`1s0v0@0N0`0:050r1p1r1t1v1n0F04051!1T1%0r1!1n0R0Y0%1a1c1e1g1c0n0I0N0=0I0`0 0F0J0G0|1C0M0|0Y0I0|0Q260|0G1l05150.0Q0`1:1d1f01252729270G2f2h2d0G0v1#211a1y0:0F0=0n1g0l012j1=010W170`0n1G0`2d2B2D2I2l2L2h2O0S2Q040d0M0s0v0K0F0K0:0Y1B1D132z0v0v0`0O2/1T2S0n1#0r212~2v2x2w2e0R2U1?0Y0n2N2,2d1-1/1b2k383a0n0K3e2d0F2@1#2|2~3r1o2C1D3g2J3k0v1s0Q2d0=242@0W1g030D0D0O3l0`293j0K0 0k3S1l0k1T0=3s3v1m3u2T3x2l3z3B3D3F0`3H013J3L3N3P3b3S0 2G040l3X3Z2D3#2|37013*0=3C1#3E0|3G3I3K3M133@3k3_0}1l0}3~2{3!1n423(1g454705494b3:4d3?393^3T0)1l0)4m1U3!1(3p1T3e310R2x364r014e2!121.1#3o0`3q4J4I40054U4#2T0Y0R1g3K2|3_0k3,4-4/3=4f4B4h3T4?0M2Y0`4_4U4g3R4~2d0r3Y3$3w1;2l0^1l130W4n4(4q5d1g0#1l0M5j2}5b430n0W1l3M0:0G1q0`5r4+5c3h011k040z5D5t4S0n1l0v2D0I5L5l5G5I0X5D5q5U3y5x0K0N2h0N0v1S4%5s5!2l5I0E0u5D1n5-5E0M4^014:3v3_3{4v5{4.5}4`3O4|563`2H51534A3Q60583Y0M6j5Z3v5u1l0n5Y5M5m010K1l0t6q5/4s0.1l2X5T6m4S5I5K5_6r5G5O043M5(0`5*5,3t6y5H1l0E5@6D4,645~2D4i4@6!66556%502P6d4{6f3T4j2~6i6k6J5#04391-0O5C5_6l3%6s6u046w716`5:1l6H6S6E6s6L5Q1^6x7e5G750 7j735G0S0Y3V6Y5F2J5;7o7v2l750*7y6n046p5_5^7d6Z4_4;4D6(6/676;0 4E6-2Z7P6+7N6@046k727z1g5f042@5A0v7G3r7$7E6N5)5+7u435I0B7^5N1l6}0Y6 7|6s5I0h6X6I0r4*4K4!4M4X1T0G4P8e342 0=2g8b0r4N1Z5`4S2@0S0D0W0=0^0`0D0|6?1L1N1P1R0M5?871+1$040Z3E4Z7r0(2@1a220:2i0q500K0G0`0v0M0R2D196 0G0M0`0;8!0O802i1R8+1c8$0Y0W0W0x2@0n6 8,0n2v2i2h0M7h0I8$0a0N1D2L1_7h8+140M0Q0a7 900R9a1D0x0Q0x2Z928$8(0M9b940Y5z2i0u9i2i8O0Y8!2z1r2N908W0k0X9E0M8U3M0n368W0{0V1(3#1!0A392-9P0=0%2^9i3E299B8$2i7=6P5+5q4*0B018l0N019P9|1@0O9 0M012)0N1|0185883N049P0:9k0Q500a0J0M9*168+8E0M0}0M9d5*2D0G199*9,2h1997199O0M0l8,8+asaB5{9U8;8)0K2?1R2+9Uaw198U5Q9H9u0{9P0kaIaG9R0K2.9-0M0%469@8$0N965R0M0Sa+0naE0V0M0j1D2+5*aY8+0R1C0O0M0F2NaX0Maq8^0v0xaT8U0M8W8^8E5z0Y238?9R0Y1H2h9t8+8H8J3e431@1_1{1}1 21232n282a2c8q6s2W2N2P1l0s20227.4J4Z5E3 5s89425|6#0n3`3U48637W68b+4 6c6554b:0l3U3-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!040b0M0,16190.aZ9R0p8#6 8^3aatb72/dt2C190R0(19be2i3k0S0.8R2;au9f19br0F1z190I7h36dD8XdGdI9=5%7?0:a~9$a|0Yaf0Y0M232@4Z9U8X192va+aPcw9^0B009}009Pd|a2d~0M00a71|000ha_dkbd1Q9Q97a=at26av9ubr119)0QaQ199j9l2iaXao0M0+e99A2zd_0:0B0+e83o0K0%0K8E5Q9xdt8!2@5*9_ad0o9U8-d,1Ad,0Wa@1^704*a~b09R2N8+dm2Nebahat0=eW2@3M9K8 9Ie;8$0x0.eWen5+1P0a230Rbh2k942ieeas0zeqaN900l0Eb95%dq9h8-1MdO8Varezd!a~0oaial3E130N0;e:0_1Cdz2ieH0Yfk8^by3#bA4S0=0Ra`0n2.bp1D8k5z5Q2_1l1Z43fOfQfS1C0 1i0G2t040oa~0idx8s0Y8Q2i0=0FeF0O0|708J1!0ca 9ceue@2Zbsa-9/8Z9;d^d!0M0x15aZ8+1p8{9A1Gbw9i1C1_0`9)9+b8aLc:9^1Pd+bjbg0F0(8Z9u9D9Z8p2e8k2h1m7#6j2e2w06gO6_300Zgqecga9C8e0|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~1R8e4PhGhv360A0Z0o0/0?1g0!100?0H100-1l0{hRhugUhVhXhZh#h%h)h+043W2 hShq8f0MhWhYh!01h$h(h*1l3}h}h/gPi0i2h?i5h^i8044libhTh:i1h=i4i6h_4Fh.inidh;i3h@i7h`0Pivh iyigisij0giEhMipizihiB1l0+iLh6iGiriih`11iThH325^2s8mg004d%2-fieP3k938,8.bu2i2;asgxdM8@f9a^110M0zerev0E9P239T5z0=gbf217e:0N0Rb4fq0Wd@g99Agb13gd9@197rbj0.5%8+8WjueWb28#jj3A9I9y9ijmes0Ngl0:gne*gp1^ecjAamfG8#9bgf9rgobl9kfe2i0+9Y1*dfdh1od?1^040!14gb0Sgg222;br4Bgl0O0=811Uj-0I7!9Dbq5zam9t0xbk1abgjEdtgZfigF1i3ObvjN2vdB0MdR2D2;j21s0I4B0mg8eH0Nay9+kwdOkz9H6Qa_17298!fEeg9eaV6Wj)5^8o4W3f6sf$1Cf(fU0.fWj~bMf!fNfPkX2/f*2.f-0of/dij@3Nb9dP8,j|j~f df0C9w0Q00fmi@b9bg0O0x13929Pjdgk2Lb52id?0N9+8#aq9i00j3ew3MaR2B1C9Va-0S0Ug7gxeb94lnj#0M0ka~0sfj9Jd/jg9=2igze)b9f79P3kkzam0Qena|2za|2v0NfHf80Mi(e{1p1.aw8G5qkQgK8l3#210`fOl@gRg;9R0G0J2h1g8Z0;0G0 46260n9D0vbL0L1l0ZjH8X3Aa:9;frjq8GhFl}5zm0cPm3m5m70Im91ae*8!md047{4*e06P001T4*ht1n2ymqm11h8-mu2pmx6 92mA2dmEhx8 mHd94!mKmpl mOmtm6mS9DmU8Z0vmB4)ade4h10`m#4*abh48h3#g`l_hS2eju0R1YgQl@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:bf0`0%gikajy1b9I1p8#aLnl0Ma#lE9PaHe;159udJjkaq0n0x6 1e162@9P0O0a8?0 0q0 1-8R0ykzf28Wja8Z6}8R8^a/7?mki:8Rj3j28:j4a~j:ebd+b60ndt904U9vlYjV9G9I8Z1HnmgIkTbB5R1`1|1~bUbI2a2p2b2Rd32V2M51bSpPc,5sdc3t6Ib$6mcK4;0}b,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)jCrkrf040DrU0Kca39rU0n6A7*5RqicDre6Gqm6|j#qy045=86qjrvb*p.0P7Or3b:r|rE7Vr qO0 r}b|r8rBq{s6rcg}qYrghPri7?rY1l0$rn3!c.c 7sq?d7rtqHb)sb0gr~rGr40 syr2sAs0sCqQcWrLr9sxsdg:rR7~5iq/qdqZrhgxsk04020I0G0Lsnc-c%r%6B2Nr=7cr,q:qvi{r=r@rsr_q_rw0 0+szrMqUs}sEs rCt1rKqSq1t4sNhjsp6Ksg8;si9@sXs%2}tc2Jrqr^s/rus`r{0 11s~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~0e0Mf;f_f{2)f}2i0.l_0N6N0Fk^lU3.2Lj}6 9Pe-1A17gm9uj,2)j.a`0R5(0K2{k1dbdfdjeye-bgm70G0xj61D0n0a8N1d0Mu90:a{mkuE9/9I8-dO802.1MjN8*gbo#95jRlhlj9Qjuruj#e%1D8s1t8E9P0G5%0yfjkAaAp2i?fogcfqi{lAl)5%epnkj#19o-0}9P0g9P0wuk0G0Oa~aX1C8+2k0K8:0x19jZj3o-u`lUo*vbo.0M0)9P0+a$0{mye)eKa%fl5v39v7vzvahP190l9P0P9Pj014vlvKvoam1evr0Yvtka0lprp2k69j2*8}jafTa_3luvj10*912%p!fhlObajDb5f30.gFfHedvt5(159gb51CkedY2;eF2+0:k98%lY8^uQ1z2/j(i*e(baeW9LaQ2i2*1ijs9Iwr1yum1Cp01tg823umuU9Q01utuv2H230xoYgb8^u(0`prl2v;3EwswJ1DlOdN2)wm0xw$gPl;1%6T1t2.0|1sm31l090z0+0taH09wE8Fas0$lE09kP3ra~8M96bhfDes8!fxb7lm9q9sjN0RlChPlEl/m@dahfa3mIad9YdH0M0r1m0Zf98?i^94fx1.9Av_6P1b4-aZdt2;ew2C8#asbrlF0Mfu9R00o{mb8+c%w{21w~8-x0x20M09v~0}xc5Du;8_apec01ewwTenar2H8~fG2ix.x,w}jax=04x10kx|5_wvn1kSfMkVt`kYt:k#fY9!t_t.fTk-f,2!0T172DpI1!0f0M0C00jF1sfRf^ko0xo`5Q2h9Pf00:1P00k5vpk8ka298RjFkfdJ0=fC3wfH0O5(o~gs1aw(m5p5p78=u=0`d/l.8^2h2_5*f_a?f5e~lfjl9:f`0vknl19*a+8#m;7ro`y?jd8vjzbb9I8WwP9Akda5y40KjOgreP2;z1jH01ylt*dekR14161804.