CodeKitHub
Generátor eszközök

Névsorsoló generátor

Utolsó frissítés:

A Secret Santa neveinek kézi kisorsolása egy valódi matematikai problémába ütközik: egy tisztán véletlenszerű keverés könnyen önmagához rendelhet valakit, az újrasorsolás pedig 'amíg jó nem lesz' alapon már nem igazán véletlenszerű. Ez az eszköz ezt helyesen oldja meg — add meg mindenki nevét, és az eszköz kiszámol egy derangement-et (olyan keverést, ahol matematikai garanciával senki sem kerül önmagához), majd minden eredményt egy kattintásra felfedhető gomb mögé rejt, hogy mindenki csak a saját párját lássa egy közös képernyőn.

Mi ez az eszköz?

A derangement egy matematikai fogalom: egy halmaz olyan átrendezése, ahol egyetlen elem sem marad az eredeti helyén. Ajándékcserénél ez azt jelenti, hogy senki sem kerül saját magához — pontosan azt garantálja, amit egy sima véletlenszerű keverés nem tud garantálni.

Az eszköz úgy állítja elő a derangement-et, hogy ismételten megkeveri a listát és ellenőrzi a feltételt, a véletlenszerűséghez pedig a kriptográfiailag biztonságos `crypto.getRandomValues()` függvényt használja a sima `Math.random()` helyett.

A 'felfedés' gomb egy nagyon gyakorlati problémát old meg: ha minden párosítás egyszerre jelenne meg a képernyőn, mindenki meglepetése egyszerre veszne oda. Az egyenkénti elrejtés lehetővé teszi, hogy egy eszközt körbeadjatok, vagy megosszátok a képernyőt úgy, hogy mindenki csak a saját nevét nézze meg.

Miért érdemes használni?

  • Karácsonyi Secret Santát szervezel a családban, és nem akarsz cetliket húzni kalapból, ahol gyakran előfordul, hogy valaki saját magát húzza.
  • 15 fős céges karácsonyi bulinál körbeadjátok a laptopot, és mindenki csak a saját nevénél kattint.
  • Barátok online ajándékcserét terveznek videóhívásban — megosztjátok a képernyőt, mindenki megjegyzi a saját párját.
  • Biztos akarsz lenni benne, hogy senki nem kap saját magát, anélkül hogy kézzel kellene ellenőrizni és újrasorsolni.
  • Minden a böngészőben történik, így a résztvevők nevei nem kerülnek szerverre, és nem maradnak elmentve sehol.

Használati útmutató

  1. Add meg az összes résztvevő nevét, soronként egyet.
  2. Kattints a „Sorsolás” gombra — az eszköz kiszámolja az igazságos párosítást (derangement).
  3. Oszd meg a képernyőt, vagy add körbe az eszközt — mindenki a saját nevénél kattint.
  4. Kattintás után felfedődik, kinek visz ajándékot az adott személy, a többi párosítás rejtve marad.

Példa

Bemenet

Nevek: Péter, Anna, Gábor, Zsófia

Kimenet

Péter → Zsófia, Anna → Péter, Gábor → Anna, Zsófia → Gábor

Minden név máshoz van párosítva, soha önmagához — ez a derangement lényege.

Derangement vs. egyszerű keverés

Egy egyszerű véletlenszerű tömbkeverés (pl. `Math.random()` egy összehasonlító függvényben) néha az eredeti helyén hagy egy elemet — ajándéksorsolásnál ez azt jelentené, hogy valaki saját magának venne ajándékot. A derangement ezt a lehetőséget matematikailag kizárja.

Kapcsolódó eszközök

További tervezési és véletlenszám-generátorok.

→ Jelszógenerátor

Hogyan sorsolj csoportban leleplezés nélkül

A legjobb módszer, ha körbeadjátok az eszközt az asztal körül, vagy megosztjátok a képernyőt egy videóhívásban — mindenki csak a saját nevénél kattint, csendben elolvassa a párosítását (vagy privát üzenetben), majd továbbadja anélkül, hogy mások látnák az eredményt.

Gyakori kérdések

Mi az a derangement, és miért számít?

A derangement egy olyan keverés, ahol senki sem marad a saját helyén. Ajándéksorsolásnál ez azt jelenti, hogy soha nem fordulhat elő, hogy valaki saját magát húzza ki — szemben egy egyszerű véletlenszerű keveréssel.

Hány embert adhatok hozzá?

Gyakorlatilag korlátlan számút — az eszköz kis családi körökhöz és céges, tucatnyi kollégás csoportokhoz egyaránt jól működik.

Látják mások, hogy engem kinek osztottak ki?

Nem, ha csak a saját neved gombjára kattintasz. A többi párosítás rejtve marad, amíg az adott személy maga fel nem fedi.

A névlista elmentődik valahol a szerveren?

Nem, a teljes számítás helyben, a böngészőben zajlik — a nevek sosem kerülnek elküldésre.

Újra lehet sorsolni, ha nem tetszik az eredmény?

Igen, az új sorsolás gombra kattintva új igazságos derangement generálódik, ez viszont törli a már felfedett párosításokat.

Működik két emberrel is?

Nem — két ember esetén csak egyetlen lehetséges kölcsönös párosítás van, így ez nem ad értelmes titkos sorsolást; legalább három résztvevőtől ideális.

Tényleg véletlenszerű a sorsolás, vagy kiszámítható?

A böngésző kriptográfiailag biztonságos véletlenszám-generátorát használja, így ugyanolyan kiszámíthatatlan, mint egy jelszógenerátor.

Mi van, ha ki akarok zárni bizonyos párokat (pl. házaspárokat)?

Az eszköz jelenleg csak az önmagához rendelést zárja ki, a saját párokat nem. Ha nem kívánt párosítás jön ki, egyszerűen sorsolj újra.

Mindenkinek egyszerre kell néznie a képernyőt?

Nem, a képernyőt megoszthatjátok egymás után is, vagy körbeadhatjátok az eszközt — mindenki csak a saját eredményét fedi fel, majd továbbadja.

Kapcsolódó eszközök