एक प्रोग्राम बनाएं जो एक स्ट्रिंग के हैमिंग वजन की गणना करता है । विजेता सबसे कम हैमिंग वजन वाला कार्यक्रम है।
नियम:
- एक ASCII चरित्र के लिए हैमिंग वजन
1
को उसके द्विआधारी प्रतिनिधित्व में निर्धारित बिट्स की कुल संख्या के रूप में परिभाषित किया गया है । - मान लें कि इनपुट एन्कोडिंग 7-बिट एएससीआईआई है, जो आपकी भाषा के लिए इनपुट तंत्र सामान्य है (जैसे स्टड, आर्ग्स, आदि) के माध्यम से पारित किया गया।
- परिणाम को एक संख्या के रूप में, स्टडआउट या आपकी भाषा का उपयोग करने के लिए डिफ़ॉल्ट / सामान्य आउटपुट तंत्र के रूप में आउटपुट करें।
- यह बिना कहे जाना चाहिए, लेकिन आपको वास्तव में कार्यक्रम को चलाने के लिए, वास्तविक जीवन में सक्षम होना चाहिए , इसके लिए एक वैध समाधान होना चाहिए।
- विजेता एक ऐसा समाधान है जिसके कोड में सबसे कम वजन वाला वजन होता है।
क्षमा करें, इसके लिए व्हॉट्सएप में कोई समाधान नहीं है !ठीक है, आप व्हॉट्सएप में कोड कर सकते हैं अब मैंने नियमों को सुलझा लिया है :)
प्रति चरित्र उदाहरण:
char | binary | weight
-----+----------+-------
a | 01100001 | 3
x | 01111000 | 4
? | 00111111 | 6
\x00 | 00000000 | 0
\x7F | 01111111 | 7
hello world
11 का वजन क्यों है ? केवल 10 वर्ण एक स्थान से भिन्न हैं। इसके अलावा - रिक्त स्थान को छोड़कर एक प्रोग्राम का हैमिंग वजन सिर्फ इसकी लंबाई है। सामान्य कोड गोल्फ से इतना अलग नहीं है।
~
और o
।
0x20
संदर्भ के रूप में ASCII 32 लेते हैं ,hello world
तो 11 के बजाय 10 का गुनगुना वजन नहीं है?