جفتهای هدیهٔ بابانوئل مخفی را بهتصادف تخصیص دهید تا هرکس یک بار میدهد و یک بار میگیرد، با جفتهای محرومیت اختیاری. کاملاً آفلاین در مرورگر شما اجرا میشود.
ابزار سازماندهندهٔ تکدستگاهی — کل فهرست را آشکار میکند، پس آن را خصوصی اجرا کنید.
— خروجی اینجا نمایش داده میشود —
درباره این ابزار
مولد بابانوئل مخفی یک گروه را برای تبادل هدیه بهتصادف جفت میکند بهطوریکه هرکس دقیقاً یک هدیه میدهد و یکی میگیرد — و هیچکس نام خودش را نمیکشد. یک نام در هر خط بچسبانید، هر جفت محرومیتی که نیاز دارید بیفزایید (برای مثال، تا یک زوج به هم انطباق داده نشوند) و Assign را کلیک کنید.
در پشت صحنه یک derangement معتبر را با تخصیص چرخهای میسازد: نامها با یک درهمسازی Fisher-Yates که با مولد تصادفی رمزنگاریشدهٔ مرورگر (crypto.getRandomValues) هدایت میشود درهم میشوند، سپس هر فرد در ترتیب درهمشده به فرد بعدی در چرخه هدیه میدهد، و آخری به اولی. یک چرخهٔ واحد تضمین میکند هیچ خودانطباقی رخ ندهد و هرکس هم بدهد و هم بگیرد. برای رعایت محرومیتها، ابزار تا چند هزار بار دوباره درهم میکند تا آرایشی بیابد که هیچ قاعدهای را نشکند؛ اگر محدودیتهای شما قابل ارضا نباشند، بهجای بازگرداندن یک فهرست بد به شما میگوید.
این یک ابزار تکدستگاهی برای سازماندهنده است — کل فهرست دهندهبهگیرنده را روی صفحه نشان میدهد، پس آن را خصوصی اجرا کنید. همهچیز بهصورت محلی در مرورگر شما رخ میدهد: هیچچیز بارگذاری نمیشود و آفلاین کار میکند. محرومیتها را بهصورت دو نام در هر خط جداشده با ویرگول، دونقطه یا خط تیره وارد کنید (برای مثال، «Alex, Jordan»).
پرسشهای پرتکرار
آیا ممکن است کسی به خودش هدیه بدهد؟
هرگز. تخصیص یک derangement چرخهای واحد است که از نظر ریاضی تضمین میکند هیچ فردی به خودش انطباق داده نشود و هرکس یک بار بدهد و یک بار بگیرد.
چگونه جلوی انطباق یک زوج را بگیرم؟
یک خط محرومیت با هر دو نام جداشده با ویرگول، دونقطه یا خط تیره بیفزایید، مثلاً «Alex, Jordan». محرومیتها دوطرفهاند، پس هیچکدام نمیتواند دیگری را بکشد. هر تعداد خط محرومیت که نیاز دارید بیفزایید.
اگر محرومیتهای من قابل ارضا نباشند چه؟
ابزار تا چند هزار بار دوباره درهم میکند تا یک آرایش معتبر بیابد. اگر هیچ تخصیصی نتواند هر محرومیت را رعایت کند (برای مثال، قواعد همپوشان بیشازحد)، بهجای بازگرداندن یک فهرست نامعتبر گزارش میدهد که محدودیتها ناممکناند.
آیا قرعه خصوصی است و آفلاین کار میکند؟
این یک ابزار سازماندهنده است که کل فهرست را روی یک صفحه نشان میدهد، پس آن را جایی اجرا کنید که بازیکنان نتوانند ببینند. بهطور کامل در مرورگر شما با مولد تصادفی رمزنگاری محلی اجرا میشود — هیچچیز بارگذاری نمیشود و آفلاین کار میکند.