मुझे एक कॉम्बिनेटरिक्स समस्या है जिसे मैं OEIS पर रखना चाहूंगा — समस्या यह है कि मेरे पास पर्याप्त शर्तें नहीं हैं। यह कोड चुनौती है मुझे अधिक शब्दों की गणना करने में मदद करने के लिए, और विजेता उपयोगकर्ता को सबसे बड़ी संख्या वाले सबमिशन के साथ होगा।
समस्या
मान लीजिए कि मैं आपको साइड लंबाई साथ प्रकाश बल्बों का त्रिकोणीय सरणी देता हूं :
o
o o
o o o
o o o o
o o o o o
o o o o o o
1 2 ... n
मैं तीन लाइटबल्बों को चालू करने जा रहा हूं जो निम्न उदाहरण में "ईमानदार" समबाहु त्रिभुज बनाते हैं:
o
o x
o o o
o o o o
o x o o x
o o o o o o
इससे पहले कि मैं लाइटों को चालू करूं, आपका काम है कि सरणी से जितना संभव हो सके उतने लाइटबल्ब को हटा दिया जाए - बिना चालू किए बल्बों के त्रिकोण को कम करने की क्षमता खोना। स्पष्ट होने के लिए, यदि एक लाइटबल्ब हटा दिया गया है, तो इसकी स्थिति चालू होने पर इसे जलाया नहीं जाता है।
उदाहरण के लिए, यदि आपने निम्नलिखित बल्बों को हटा दिया (द्वारा चिह्नित .) तो आप केवल निम्नलिखित दो लाइटों को चालू (चिह्नित करके x) देखेंगे , जो कि विशिष्ट रूप से तीसरी (अनलिमिटेड) स्थिति को घटाती है:
. .
. o . x
. . o . . o
o o o . => o o o .
o o o o . o x o o . <- the third unlit position
o . . . o o o . . . o o
आज्ञा देना a(n)अधिकतम संख्या में बल्ब हैं जिन्हें बिना किसी अस्पष्टता के परिचय के हटाया जा सकता है।
उदाहरण
एक भोली एल्गोरिथ्म के साथ, मैंने साइड त्रिकोण 7 के साथ एक त्रिकोण तक मानों की जाँच की है, जैसा कि नीचे देखा गया है:
.
. . o
. . o o . o
. . . . . o . o o .
. . . . o o o o o . o o . o .
. . . . o o o o . o o o o o . o . o . o o
. . . o o . o o o o . . o o o . . . o o o . o . o o o
a(2) = 3 a(3) = 4 a(4) = 5 a(5) = 7 a(6) = 9 a(7) = 11
स्कोरिंग
सबमिशन जो [a(2), a(3), ..., a(n)]सबसे बड़े n जीत के लिए अनुक्रम की गणना करता है । यदि दो सबमिशन में समान सीक्वेंस होते हैं, तो वह जो पहले पोस्ट किया गया था वह जीत जाता है।
हालांकि प्रस्तुत करने के लिए आवश्यक नहीं है, यह मेरे लिए शिक्षाप्रद होगा यदि आप परिणामस्वरूप त्रिकोणीय सरणियों का निर्माण पोस्ट करते हैं, जैसा कि ऊपर दिए गए उदाहरण में है।