पृष्ठभूमि
बोगल एक बोर्ड गेम है जहां खिलाड़ियों को यादृच्छिक वर्णमाला के 4-बाय -4 बोर्ड पर अंग्रेजी शब्द ढूंढने होते हैं। बोर्ड पर क्रमिक रूप से आसन्न कोशिकाओं का चयन करके शब्दों का निर्माण किया जा सकता है। ("निकटवर्ती" का अर्थ है क्षैतिज, लंबवत या तिरछे आसन्न।) साथ ही, एक शब्द में एक से अधिक बार एक ही सेल का उपयोग नहीं किया जा सकता है।
निम्नलिखित एक उदाहरण बोर्ड है:
I L A W
B N G E
I U A O
A S R L
इस बोर्ड पर, BINGO
, ORANGE
और WEARS
वैध शब्द हैं, लेकिन SURGE
और RUSSIA
नहीं कर रहे हैं:
SURGE
: बोर्ड पर कोई आसन्न जोड़ी नहीं हैRG
।RUSSIA
:S
दो बार इस्तेमाल नहीं किया जा सकता।
संशोधित बोगल निम्नलिखित नियमों के साथ बोगल का एक संशोधित संस्करण है:
- बोर्ड का आकार
n
-by हैn
, जहांn
कोई भी धनात्मक पूर्णांक हो सकता है। - प्रत्येक सेल में 0 और 255 समावेशी के बीच कोई भी एक बाइट हो सकती है।
- एक सेल का उपयोग एक से अधिक बार किया जा सकता है, लेकिन एक पंक्ति में दो बार नहीं ।
ऊपर दिए गए उदाहरण बोर्ड का उपयोग करना BINGO
, ORANGE
और WEARS
, LANGUAGE
एक वैध स्ट्रिंग बन जाता है (चूंकि G
दो बार उपयोग किया जाता है, लेकिन एक पंक्ति में दो बार नहीं) लेकिन फिर RUSSIA
भी ( SS
जोड़ी के कारण ) नहीं है।
कोड टुकड़ा का उपयोग करके यहां एक और उदाहरण दिया गया है। स्ट्रिंग from itertools import*\n
निम्नलिखित बोर्ड पर पाया जा सकता है, लेकिन नहीं from itertoosl import*
या from itertools import *
:
f i ' ' s
r t m l
e o o p
\n * t r
ध्यान दें कि आपको अनुक्रम o
से मेल खाने के लिए दो की आवश्यकता है oo
।
चुनौती
एक फ़ंक्शन या प्रोग्राम लिखें, जो एक संशोधित बोगल बोर्ड B
(किसी भी आकार का) और एक स्ट्रिंग दिया जाता है s
, यह निर्धारित करता है कि s
क्या पाया जा सकता है B
।
प्रतिबंध
आपका कोड खुद भी एक संशोधित बोगल बोर्ड पर फिट होना चाहिए b
। यही है, आपको b
अपने कोड के साथ अपने सबमिशन में बोर्ड दिखाना होगा , ताकि आपका फ़ंक्शन / प्रोग्राम आउटपुट सही हो जाए b
और यह आपके इनपुट पर कोड हो।
स्कोरिंग
आपके सबमिशन का स्कोर सबसे छोटे बोर्ड की साइड लंबाई है b
जहां आप अपना कोड फिट कर सकते हैं। सामान्य कोड-गोल्फ नियम, यानी बाइट्स में आपके कोड की लंबाई से संबंध टूट जाते हैं । सबसे कम स्कोर (दोनों मानदंडों के लिए) के साथ सबमिशन जीतता है।
उदाहरण के लिए, from itertools import*\n
4 के स्कोर (ऊपर बोर्ड का उपयोग करके) और 23 बाइट्स की कोड लंबाई है।
इनपुट और आउटपुट
इनपुट के लिए, आप दोनों के लिए किसी भी सुविधाजनक तरीका ले जा सकते हैं B
और s
। इसमें वर्णों की सूची और चार्ट की सूची, 2D या चपटा या जो कुछ भी समझ में आता है। इसके अलावा, आप वैकल्पिक रूप से इनपुट के एक भाग के रूप में बोर्ड का आकार ले सकते हैं।
आउटपुट के लिए, आप निम्न में से एक चुन सकते हैं:
- आपकी भाषा के सम्मेलन के बाद सत्य और मिथ्या मूल्य, या
- सही और गलत के लिए एक पूर्वनिर्धारित मूल्य क्रमशः।
कृपया अपनी प्रविष्टि में अपना इनपुट / आउटपुट विधि निर्दिष्ट करें।
+=+=
कुछ करते हैं। समस्या है ==
आउटपुट फंक्शन ...