वर्णमाला के रूप में यूनिकोड वर्णों के किसी भी अनुक्रम के लिए एक द्विदिश जेमेट्रिया कैलकुलेटर बनाएं।
Gematri-क्या?
जेमेट्रिया प्रतीकों के लिए संख्यात्मक मूल्यों को निर्दिष्ट करने की एक प्रणाली है, जिसे प्राचीन यूनानियों द्वारा विकसित और प्राचीन यहूदियों द्वारा अपनाया गया है। यह एक तरह से ASCII या यूनिकोड है, यह सिर्फ गैर-रैखिक है ... निम्न तालिका देखें (ऊपर दी गई लिंक में पूरी तालिका उपलब्ध है):
Index Letter Letter name Value
--------------------------
0 א "Alef" 1
1 ב "Bet" 2
...
8 ט "Tet" 9
9 י "Yud" 10
10 כ "Kaf" 20
...
17 צ "Tsady" 90
18 ' "Kuf" 100
19 ר "Resh" 200
...
अक्षरों के नाम महत्वपूर्ण नहीं हैं, केवल वर्णमाला के "ऐरे" और संबंधित संख्यात्मक मान में उनका सूचकांक। हिब्रू वर्णमाला में केवल 22 अक्षर हैं ("अंतिम" अक्षर शामिल नहीं हैं), इसलिए अधिकतम उपलब्ध मूल्य 400 है।
यदि हम इस प्रणाली को अंग्रेजी वर्णमाला (AZ) में उधार लेते हैं तो हम A = 1, B = 2 ... L = 30 ... U = 300 ... Z = 800 के साथ समाप्त हो जाएंगे।
दो बातें हमें जाननी जरूरी हैं।
इस प्रणाली में सबसे महत्वपूर्ण सुविधाओं में से एक एक के "Gematria मान" गणना कर रहा है शब्द , द्वारा संक्षेप अपने पत्र 'मान। (कुछ लोग कहते हैं कि शब्दों, या वाक्यांशों के बीच एक रहस्यमय संबंध है (जब अंतरिक्ष का मूल्य शून्य है) - जो एक ही रत्न मूल्य साझा करता है)।
किसी भी गैर-नकारात्मक पूर्णांक को प्रतीकों में दर्शाया जा सकता है। उदाहरण के लिए (और अब अंग्रेजी वर्णमाला के साथ रहने के लिए) 32 का मूल्य एलबी (एल = 30 + बी = 2) है। 1024 का मूल्य ZTKD (800 + 200 + 20 + 4 है। ध्यान दें कि ZSSKD भी 1024 है, लेकिन यह कानूनी प्रतिनिधित्व नहीं है, क्योंकि यह संकुचित हो सकता है)।
चुनौती
अपनी भाषा-पसंद में एक कार्यक्रम / एक फ़ंक्शन / एक कोड स्निपेट लिखें, जिसे पहले एक वर्णमाला (नीचे एपीआई देखें) के साथ सेट किया गया है और फिर एक तर्क स्वीकार करें। वह तर्क एक पूर्णांक, या एक शब्द / वाक्यांश हो सकता है। यदि यह एक पूर्णांक है - तो आपके प्रोग्राम को वर्णमाला के प्रतीकों में अपना प्रतिनिधित्व आउटपुट / वापस करना चाहिए - सबसे कॉम्पैक्टेड एक (ऊपर देखें (2))। यदि यह एक शब्द या वाक्यांश है, तो आपके प्रोग्राम को जेमट्रिया वैल्यू (प्रतीकों के मूल्यों को संक्षेप में करके, व्हाट्सएप की गिनती नहीं करके, आउटपुट करना / वापस करना चाहिए) (1) देखें।
एपीआई
आपके कार्यक्रम / समारोह को 3 तर्क स्वीकार करने चाहिए। आप उन्हें STDIN से प्राप्त कर सकते हैं, या फ़ंक्शन तर्क के रूप में, आप यह भी मान सकते हैं कि वे वैरिएबल हैं जो आपके फ़ंक्शन इनवोकेशन से पहले प्रोग्रामेटिक रूप से आरंभीकृत करते हैं।
- पहला तर्क - वर्णमाला का पहला चरित्र (यूनिकोड में)।
- दूसरा तर्क - वर्णमाला का अंतिम चरित्र (यूनिकोड में)।
- तीसरा तर्क - एक पूर्णांक, प्रतीकों में प्रतिनिधित्व करने के लिए, या एक वाक्यांश जो दिए गए वर्णमाला द्वारा बनाया गया है।
आउटपुट / रिटर्न वैल्यू: तीसरे तर्क पर निर्भर करता है, जैसा कि ऊपर बताया गया है।
मान्यताओं
- पहले दो तर्क हमेशा एक वर्ण लंबे होंगे, और दूसरा हमेशा पहले की तुलना में ग्रेटर होगा।
- अनुक्रम (पहले तक अंतिम, समावेशी) में 30-39 (जो अंक 0-9 का प्रतिनिधित्व करते हैं) का कोई भी मान शामिल नहीं होगा, अन्यथा यह तीसरे तर्क को अस्पष्ट बना देगा। संपादित करें: इसमें स्थान भी नहीं होगा, क्योंकि वाक्यांशों में स्थान शून्य के रूप में गिने जाते हैं।
- तीसरा तर्क, यदि यह एक वाक्यांश है, इसमें केवल दिए गए वर्णमाला के स्थान और अक्षर हो सकते हैं। खाली स्ट्रिंग एक वैध इनपुट नहीं है (आप मान सकते हैं कि यह खाली नहीं है)। यदि यह एक पूर्णांक है, तो आप इसे एक सकारात्मक पूर्णांक मान सकते हैं।
उदाहरण
Input Output
A Z CODE GOLF 175
a s 512 sssssjb
A B 7 BBBA
≐ ⊐ ≤≫ ≥ 1700
स्कोरिंग
Score = upvotes - length/100.0
आपका कोड संक्षिप्त होना चाहिए, लेकिन अधिक महत्वपूर्ण रूप से लोकप्रिय होना चाहिए। नकारात्मक स्कोर भी साथ खेल सकते हैं। विजेता अब से एक सप्ताह में उच्चतम स्कोर के साथ जवाब होगा, 2014-11-29 19:20:00 यूटीसी।