बिट्स की एक चर संख्या 0 या अधिक बिट्स की एक सरणी है। तो [0, 1]
बिट्स की एक चर संख्या है, लेकिन ऐसा है []
।
एक फ़ंक्शन या प्रोग्राम लिखें, जो एक nonnegative पूर्णांक दिया गया बिट्स की एक चर संख्या देता है जैसे कि प्रत्येक पूर्णांक में एक सरणी के साथ एक-से-एक (विशेषण) मैपिंग होती है।
इस तरह के मैपिंग की एक अनंत राशि है, आप कृपया निर्माण के लिए स्वतंत्र हैं, लेकिन यह एक-से-एक होना चाहिए। आपके मानचित्रण को मनमाने ढंग से आकार पूर्णांक के लिए वैचारिक रूप से एक-से-एक होना चाहिए , लेकिन यह ठीक है अगर आपका कार्यान्वयन आपकी पसंदीदा भाषा (जैसे सी int
) में संख्यात्मक प्रकार की सीमाओं के कारण बड़े पूर्णांकों के लिए विफल हो जाता है ।
एक-से-एक मैपिंग नहीं होने के उदाहरण के रूप में , बस पूर्णांक के द्विआधारी अंकों को सूचीबद्ध कर रहा है। ऐसी प्रणाली में 5 बन जाता है [1, 0, 1]
(या 0b101
), लेकिन यह एक-से-एक नहीं है, क्योंकि 0b0101
या [0, 1, 0, 1]
इसका मतलब भी 5 है।
यह स्पष्ट रूप से स्पष्ट होना चाहिए कि एक मैपिंग एक-से-एक नहीं है यदि यह एक पूर्णांक को छोड़ देता है (जैसे कि यह 5 के लिए काम नहीं करता है), लेकिन मैं यह स्पष्ट करना चाहूंगा कि एक चर बिट सरणी को छोड़ना भी एक नहीं है -एक को। आपको हर संभव चर बिट सरणी सहित मैप करना होगा []
।
बाइट्स में सबसे छोटा कोड जीतता है।