Olùmúdásílẹ̀ Ẹgbẹ́ Àdámọ́ Ọ̀fẹ́
Pin àkójọpọ̀ orúkọ sí àwọn ẹgbẹ́ àdámọ́ tí ó dọ́gba — nípa iye ẹgbẹ́ tàbí iye ẹgbẹ́ kọ̀ọ̀kan. Ìṣàkàwé tí ó dájú fún cryptography, àtúndá kíákíá.
Àwọn àtòjọ tí a fi pamọ́
A ń ránti àtòjọ àti ètò rẹ tó kẹ́yìn lórí ẹ̀rọ yìí. Fún àtòjọ ní orúkọ láti tọ́jú rẹ̀ fún ìgbà mìíràn.
Kò tíì sí àtòjọ tí a fi pamọ́.
Àwọn orúkọ ẹgbẹ́ (kò pọndandan)
Fi sílẹ̀ lófo láti lo àwọn àwọ̀. O tún lè sọ ẹgbẹ́ kan lórúkọ padà lórí káàdì rẹ̀.
Fi àwọn ìdíwọ̀ kún (kò pọn dandan)
Ẹgbẹ́ kan fún ìlà kọ̀ọ̀kan; fi & tàbí kọ́mà pín àwọn orúkọ. Àwọn ènìyàn wọ̀nyí máa wà lórí ẹgbẹ́ kan náà nígbà gbogbo.
Ẹgbẹ́ kan fún ìlà kọ̀ọ̀kan; fi & tàbí kọ́mà pín àwọn orúkọ. Àwọn ènìyàn wọ̀nyí máa wà lórí ẹgbẹ́ ọ̀tọ̀ọ̀tọ̀.
💡 A ń mú ẹgbẹ́ dọ́gba nípa lílo yíyàn snake draft, nítorí náà ìwọ̀n wọn kò yàtọ̀ ju ọ̀kan lọ. Ìdàpọ̀ ń lo àrìnàkò tí ó ní ààbò cryptographic ti aṣàwárí rẹ — tòótọ́ ní àdálẹ́. Ó dára fún kíláàsì eré-ìmárale, eré-ìdárayá, iṣẹ́ àwùjọ, alẹ́ eré, àti pípín irú secret-santa.
Bí Ó Ṣe Ń Ṣiṣẹ́
Ìpín ẹgbẹ́ ń ṣiṣẹ́ pátápátá nínú aṣàwákiri rẹ ní lílo yíyí Fisher-Yates tí ó ní ààbò cryptographic (tí crypto.getRandomValues API Web Crypto ń fún ní agbára) pọ̀ mọ́ ìpín snake-draft fún àwọn ẹgbẹ́ tí ó bára mu. Nígbà tí a bá fi àwọn ìdí pa-pọ̀-mọ́ tàbí pa-yà-sí-ọ̀tọ̀ kún un, olùmúpari ìkójọpọ̀ union-find pẹ̀lú títí dé àtúnbẹ̀rẹ̀ 400 tí a yàn láìròtẹ́lẹ̀ ń rí ìpín tí ó bára mu jùlọ tí ó sì tọ́.
- 1Ìpín àtòjọ orúkọA ń pín àwọn orúkọ lórí ìlà tuntun àti kọ́mà, a ń yọ àyè kúrò lára wọn, a sì ń yọ àwọn tí ó tún ṣe kúrò. O lè lo olùpín méjèèjì lásàrọ́ — parser náà ń mú wọn ní ìgbésẹ̀ kan.
- 2Yíyí tí ó ní ààbò cryptographiccrypto.getRandomValues aṣàwákiri tí a kọ́ sínú rẹ̀ ń kó Uint32Array kan pẹ̀lú nọ́mbà 32-bit láìròtẹ́lẹ̀ kan fún orúkọ kọ̀ọ̀kan. Yíyí náà ń lo àwọn iye wọ̀nyí pẹ̀lú pípín ìwọ̀n dípò modulo, tí ó ń yọ ìtẹ̀sí modulo tí ó ń bàjẹ́ àwọn olùyí Math.random() kúrò.
- 3Ìpín tí ó bára mu tàbí ìdí ìpinnuLáìsí àwọn ìdí, a ń pín àwọn orúkọ ní lílo àwòṣe snake-draft (òsì-sí-ọ̀tún ní àwọn yíyíká déédéé, ọ̀tún-sí-òsì ní àwọn yíyíká odi) nítorí náà ìwọ̀n ẹgbẹ́ kì í yàtọ̀ ju ọ̀kan lọ. Pẹ̀lú àwọn òfin pa-pọ̀-mọ́ tàbí pa-yà-sí-ọ̀tọ̀, a ń kó àwọn orúkọ sí àwọn ìkójọpọ̀ nípasẹ̀ union-find, olùmúpari greedy tí a yàn láìròtẹ́lẹ̀ sì ń gbìyànjú títí dé àwọn ìtòsí 400 tí ó sì ń pa ìpín tí ó ní àìdọ́gba ìwọ̀n kékeré jùlọ mọ́.
- 4Gbé jáde gẹ́gẹ́ bí ọ̀rọ̀ lásán, CSV, tàbí ìjápọ̀ tí a lè pínA lè dàkọ àwọn àbájáde gẹ́gẹ́ bí ọ̀rọ̀ lásán, gba wọ́n gẹ́gẹ́ bí fáìlì .txt tàbí .csv (tí a kọ́ pẹ̀lú API Blob aṣàwákiri), tàbí pín in nípasẹ̀ hash URL tí ó ṣe àmúlò gbogbo ipò ìjókòó pátápátá ní base64url — kò sí sáfà tí ó kàn ní àkókò èyíkéyìí.
Àwọn Irinṣẹ Tó Jọra
Olùṣe Àwòrán Ẹnìkọ̀ọ̀kan
Ṣẹ̀dá àwọn àwòrán ìbẹ̀rẹ̀ lẹ́tà tí ó mọ́ — yan àwọ̀, ìrísí àti ìwọ̀n, kí o sì ṣe éxport PNG.
Ìjìka Owó & Kẹ̀kẹ́ Ìyí
Já owó fẹ́lẹ́fẹ́lẹ́, yí kẹ̀kẹ́ tí ó ṣeé ṣàtúnṣe, tàbí yan lọ́nà àdámọ́ lára àkójọpọ̀ àwọn àṣàyàn. Ó ń lo ìtòlẹ́sẹẹsẹ àdámọ́ tí ó dájú fún cryptography láti ọ̀dọ̀ ẹ̀rọ àwárí rẹ — kì í ṣe ìyàn ìtẹ̀wádàwọ̀ràn gbangba, nítorí náà yẹra fún àwọn ìdíje tí a ń darí.
Olùmúdásílẹ̀ Nọ́mbà Àdámọ́
Ṣẹ̀dá àwọn nọ́mbà àdámọ́ ní ààlà èyíkéyìí, ṣẹ̀dá àwọn àkójọpọ̀ nọ́mbà tí kò tún ara wọn ṣe, tàbí ju dídà. Ó ń lo ìtòlẹ́sẹẹsẹ àdámọ́ tí ó dájú fún cryptography.