Soo Saaraha Koox Random oo Bilaash ah

U kala qaybi liiska magacyada kooxo random ah oo isku mid ah — tirada kooxaha ama cabbirka kooxda. Kala-qaso caddaalad ah oo cryptographically ah, dib-u-kala-qaso isla markiiba.

Wuu shaqeeyaa oflaayn marka la shubo
Liisaska la keydiyay

Liiskaaga ugu dambeeyay iyo dejinnadaada waxaa lagu xasuustaa qalabkan. U bixi liis magac si aad u hayso mar dambe.

Weli liis la keydiyay ma jiro.

Magacyada kooxaha (ikhtiyaari)

Ka daa madhan si loo isticmaalo midabbo. Waxaad sidoo kale u bedeli kartaa magaca kooxda kaarkeeda.

Ku dar xayiraado (ikhtiyaari ah)

Hal koox khad kasta; magacyada kala sooc & ama comma. Dadkani had iyo jeer koox isku mid ah ayay ku jiraan.

Hal koox khad kasta; magacyada kala sooc & ama comma. Dadkani waxay ku jiraan kooxo kala duwan.

💡 Kooxaha waxaa loo isu dheelitiraa iyadoo la isticmaalayo qaabka 'snake draft', sidaa darteed cabbirradu waxay ku kala duwan yihiin ugu badnaan hal qof. Qasashada waxay isticmaashaa random-nimada amniga leh ee biraawsarkaaga — caddaalad dhab ah. Waxay ku fiican tahay fasallada JB, ciyaaraha, mashaariicda kooxeed, habeenada ciyaarta, iyo qaybinta secret-santa.

Sida Ay U Shaqeyso

Kala-qaybinta kooxaha wuxuu gebi ahaanba ka shaqeeyaa biraawsarkaaga isagoo isticmaalaya qasid Fisher-Yates oo cryptographically-ammaan ah (oo shaqaynaysa crypto.getRandomValues ee API-ga Web Crypto) la isku daray qaybin snake-draft ah oo kooxo isku-dheelitiran ah. Marka xayiraadaha wada-jira ama kala-fog la daro, xalliye union-find cluster ah oo leh ilaa 400 dib-u-bilaabid random ah ayaa helaya qoondaynta ugu dheelitiran ee ansaxa.

  1. 1
    Falanqaynta liiska magacyada
    Magacyada waxaa lagu kala jaraa khadad cusub iyo comma, waxaa laga nadiifiyaa bannaanka, waxaana laga saaraa nuqullada isku-mid ah. Waxaad isku dhafi kartaa labada kala-soocaba si xor ah — falanqeeyuhu hal socod ayuu ku maareeyaa.
  2. 2
    Qasid cryptographically-ammaan ah
    crypto.getRandomValues-ka biraawsarka ku dhex jira wuxuu buuxiyaa Uint32Array integer 32-bit random ah magac kastaba. Qasiddu waxay isticmaashaa qiyamkan qaybin miisaaman halkii modulo, taasoo ka saarta eexda modulo ee dhibaato geliso qasiddayaasha ku salaysan Math.random().
  3. 3
    Qaybin dheelitiran ama xalinta xayiraadaha
    Iyada oo aan xayiraado jirin, magacyada waxaa loo qaybiyaa nooca snake-draft (bidix-ilaa-midig wareegyada isku-mid ah, midig-ilaa-bidix kuwa-kale) si cabbirka kooxuhu ugu kala duwanaadaan ugu badnaan hal. Xeerar wada-jir ama kala-fog leh, magacyada waxaa lagu isku daraa clusters via union-find, kadibna xalliye greedy random ah wuxuu isku dayaa ilaa 400 meel-marin wuxuuna hayaa qoondaynta ugu yar dheelitir-la'aanta cabbirka.
  4. 4
    Ku soo saar qoraal, CSV, ama link la wadaagi karo
    Natiijooyinka waxaa loo koobiyeyn karaa qoraal caadi ah, loo soo dejin karaa fayl .txt ama .csv ah (lagu dhisay API-ga Blob ee biraawsarka), ama loogu wadaagi karaa hash URL ah oo sumeeya xaalada fadhiga oo dhan base64url ahaan — server midna kuma lug lahan wakhti kasta.

Qalabka La Xiriira

Su'aalaha Inta Badan La Iska Weydiiyo