ट्रैक
/
C#
C#
/
अभ्यास
/
चौंकाने वाले जन्मदिन
चौंकाने वाले जन्मदिन

चौंकाने वाले जन्मदिन

मध्यम

परिचय

कॉलेज से निकलते ही, आप दोस्तों और परिवार के साथ जश्न मनाने के लिए एक बड़ी पार्टी कर रहे हैं। 70 से ज़्यादा लोग आ चुके हैं, जिनमें आपके थोड़े सनकी अंकल टेड भी शामिल हैं।

अपनी आदत की एक शरारत में, वे आपसे £100 की शर्त लगाते हैं कि इस कमरे में कम से कम दो लोगों का जन्मदिन एक ही है। यह सुनने में बेतुका लगता है: मेहमानों की तुलना में संभावित जन्मदिन बहुत ज़्यादा हैं, इसलिए आप पूरे भरोसे के साथ शर्त मान लेते हैं।

आपको हैरानी होती है, क्योंकि सिर्फ 32 मेहमानों के जन्मदिन जानने के बाद ही आपको दो ऐसे मेहमान मिल चुके हैं जिनका जन्मदिन एक ही है। हार स्वीकार करते हुए आप अंकल टेड को उनके £100 दे देते हैं, लेकिन कुछ ठीक नहीं लगता।

अगले दिन जिज्ञासा आप पर हावी हो जाती है। एक तेज़ वेब खोज आपको जन्मदिन विरोधाभास तक ले जाती है, जिससे पता चलता है कि सिर्फ 23 लोग होने पर ही एक ही जन्मदिन होने की संभावना 50% से ज़्यादा हो जाती है।

आह। तो इसीलिए अंकल टेड इतने आत्मविश्वास से भरे थे।

पासा पलटने की ठानकर आप दूसरे विरोधाभासों को खोजना शुरू करते हैं; अगली बार शर्त लगाने वाले आप होंगे।

Note

जन्मदिन विरोधाभास एक सत्य विरोधाभास है: भले ही यह गलत लगता है, वास्तव में यह सही है।

निर्देश

आपको जन्मदिन विरोधाभास की प्रायिकताओं का अनुमान लगाना है।

इसके लिए आपको यह करना है:

  • यादृच्छिक जन्मतिथियाँ बनाइए।
  • जाँचिए कि यादृच्छिक रूप से बनाई गई जन्मतिथियों के समूह में कम से कम दो जन्मतिथियाँ ऐसी हैं जिनका जन्मदिन एक ही है।
  • अलग-अलग आकार के समूहों के लिए यह अनुमान लगाइए कि समूह में कम से कम दो लोगों का जन्मदिन एक ही होने की प्रायिकता कितनी है।
Note

जन्मतिथि में जन्म की पूरी तारीख शामिल होती है (साल, महीना और दिन), जबकि जन्मदिन केवल महीने और दिन को कहते हैं, और ये हर साल दोहराते हैं। एक ही महीने और दिन वाली दो जन्मतिथियाँ एक ही जन्मदिन दर्शाती हैं।

Caution

जन्मदिन विरोधाभास यह मानता है कि:

  • 365 जन्मदिन संभव हैं (कोई अधिवर्ष नहीं)।
  • हर जन्मदिन की संभावना बराबर है (समान वितरण)।

आपका कोड इन मान्यताओं के अनुसार होना चाहिए।


स्रोत

Erik Schierboomयह लिंक एक नई विंडो या टैब में खुलता है
GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
C# Exercism

चौंकाने वाले जन्मदिन शुरू करने के लिए तैयार हैं?

Exercism पर साइन अप कीजिए और C# को 62 कॉन्सेप्ट178 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।