चुनौतियों पर वापस जाएँ
मध्यम 0 हल किए गए 0% स्वीकृति

पासा अनुक्रमणिकाएँ गिनें

दिए गए योग के लिए क्रमबद्ध पासा-फेंक अनुक्रमणिकाएँ गिनें।

आप क्या सीखेंगे

  • छोटे योगों से उत्तर बनाना
  • आख़िरी पासे पर पुनरावृत्ति संबंध लिखना
  • बड़ी अभाज्य संख्या के मॉड्यूलो में परिणाम लेना

समस्या

एक सामान्य पासा 1 से 6 तक का पूर्णांक उत्पन्न करता है। उन सभी गैर-रिक्त क्रमबद्ध अनुक्रमणिकाओं की गिनती करें जिनका योग target है। अलग-अलग क्रम अलग माने जाएंगे। उत्तर को 1,000,000,007 से मॉड्यूलो लेकर लौटाएँ।

dice_combinations(target) को लागू करें।

इनपुट

target: सभी फेंकों का आवश्यक योग।

आउटपुट

अनुक्रमणिकाओं की संख्या 1,000,000,007 से मॉड्यूलो लेकर लौटाएँ।

सीमाएँ

1 ≤ target ≤ 1,000,000। किसी संख्या को 1,000,000,007 से मॉड्यूलो लेना मतलब है उसे उस संख्या से भाग देने के बाद शेषफल लौटाना।

उदाहरण

उदाहरण 1
इनपुट:
target = 2

अपेक्षित आउटपुट:
expected = 2
इनपुट:
long long target = 2;

अपेक्षित आउटपुट:
long long expected = 2;
इनपुट:
long target = 2;

अपेक्षित आउटपुट:
long expected = 2;

व्याख्या

दो अनुक्रमणिकाएँ हैं: [2] और [1, 1]।

उदाहरण 2
इनपुट:
target = 4

अपेक्षित आउटपुट:
expected = 8
इनपुट:
long long target = 4;

अपेक्षित आउटपुट:
long long expected = 8;
इनपुट:
long target = 4;

अपेक्षित आउटपुट:
long expected = 8;

व्याख्या

अनुक्रमणिकाएँ हैं: [4], [1,3], [3,1], [2,2], [1,1,2], [1,2,1], [2,1,1], और [1,1,1,1]।

कैसे हल करें

पहले खुद कोशिश करें, फिर एक-एक करके संकेत खोलें।

संकेत 1

छोटे sums को target बनाने के लिए building blocks की तरह सोचो.

संकेत 2

हर sum का running count पिछले छह sums पर आधारित रखो.

संकेत 3

हर addition पर modulo लगाना मत भूलो, और 1 से छोटे sums को separately handle करो.

अपेक्षित जटिलता

समय O(target), अतिरिक्त स्थान O(target)

संदर्भ

यह चुनौती CodeUtility के लिए अनुकूलित की गई है। ऊपर दिए गए स्टेटमेंट और सीमाओं का पालन करें।

दूसरों से सीखें

समुदाय समाधान

अभी तक कोई प्रकाशित समाधान नहीं। पहला साझा करने के लिए इस चुनौती को हल करें।