परिचय:
एक डच BSN (बर्गरसर्वर न्यूमर) तब मान्य होता है जब वह निम्नलिखित नियमों का अनुपालन करता है:
- इसमें केवल अंक होते हैं।
- लंबाई या तो लंबाई 8 या 9 होनी चाहिए।
- जब अंकों को निम्न के रूप में अनुक्रमित किया
A
जाता हैI
, तो निम्नलिखित योग का परिणाम:9xA + 8xB + 7xC + 6xD + 5xE + 4xF + 3xG + 2xH + -1xI
(नोट 1 के बजाय -1!) को 11 से विभाज्य होना चाहिए, और 0 नहीं होना चाहिए।
चुनौती:
इनपुट: बीएसएन का प्रतिनिधित्व करने वाला एक स्ट्रिंग या चार-सरणी।
आउटपुट: एक सत्य या गलत परिणाम यह है कि इनपुट एक वैध बीएसएन है।
चुनौती नियम:
- इनपुट प्रारूप एक स्ट्रिंग या चार-सरणी होना चाहिए। आपको अंको के एक सरणी का उपयोग करने की अनुमति नहीं है, या एक (संभवतः अष्टाधारी) संख्या। (आपको इसे स्वयं के अंकों के अंतर-सरणी में बदलने की अनुमति है, हालांकि, सीधे तर्क के रूप में नहीं।)
- उपरोक्त इनपुट पर प्रतिबंध के बावजूद, आप मान सकते हैं कि सभी परीक्षण मामलों में एक या अधिक अंक होंगे (
[0-9]+
) - बीएसएनएल की लंबाई 9 के बजाय 8 के बारे में, डच विकिपीडिया में निम्नलिखित कहा गया है: " ग्यारह-परीक्षण के लिए और अन्य व्यावहारिक उपयोगों के लिए, लंबाई 9. की संख्या बनाने के लिए एक अग्रणी शून्य जोड़ा जाता है " ( स्रोत )
सामान्य नियम:
- यह कोड-गोल्फ है , इसलिए बाइट्स जीत में सबसे छोटा जवाब है।
कोड-गोल्फ भाषाओं को गैर-कोडगॉल्फिंग भाषाओं के साथ उत्तर पोस्ट करने से हतोत्साहित न करें। 'किसी भी' प्रोग्रामिंग भाषा के लिए यथासंभव संक्षिप्त उत्तर के साथ आने का प्रयास करें। - मानक नियम आपके उत्तर के लिए लागू होते हैं , इसलिए आपको उचित पैरामीटर, पूर्ण कार्यक्रमों के साथ STDIN / STDOUT, फ़ंक्शन / विधि का उपयोग करने की अनुमति है। तुम्हारा कॉल।
- डिफ़ॉल्ट लूपोल्स निषिद्ध हैं।
- यदि संभव हो, तो कृपया अपने कोड के लिए एक परीक्षण के साथ एक लिंक जोड़ें।
- इसके अलावा, यदि आवश्यक हो तो एक स्पष्टीकरण जोड़ें।
परीक्षण के मामलों:
// Truthy test cases:
111222333
123456782
232262536
010464554
10464554
44016773
// Falsey test cases:
000000000
192837465
247594057
88888888
73
3112223342
000000012
A
सूत्र से बाहर निकलता है (या मूल रूप 0
से इसे लंबाई 9 बनाने के लिए एक अग्रणी जोड़ता है , जिसके परिणामस्वरूप इसे छोड़ दिया जाता है A
)।
A
दिए गए फॉर्मूले से चूक जाता है?