कई महीने पहले मैंने एक साक्षात्कार के लिए एक प्री-स्क्रीनिंग पहेली के रूप में यह सवाल किया था। हाल ही में जब ब्लॉग सामग्री के बारे में सोचते हैं, तो यह मेरे सिर में एक समस्या को कार्यात्मक रूप से हल करने के लिए उपयोग करने के लिए एक अच्छा उदाहरण है। जैसे ही मैं अपना ब्लॉग पोस्ट लिखूंगा, मैं अपना समाधान इसके लिए पोस्ट कर दूंगा।
नोट: यह सवाल एक साल पहले स्टैकऑवरफ्लो पर पूछा गया था , और कुछ (गलत) जवाबों के बाद अस्वीकृत कर दिया गया था। मुझे लगता है कि यह एक स्पष्ट साक्षात्कार या होमवर्क प्रश्न होने के लिए नीचा दिखाया गया था। हमारे जवाबों को किसी के बारे में सोचने के लिए नहीं, किसी के लिए काफी गहरी कोडित होनी चाहिए!
एक दौड़ में, आप निम्नलिखित रणनीति का उपयोग करके शर्त लगाते हैं। जब भी आप एक शर्त हारते हैं, तो आप अगले दौर के लिए दांव का मूल्य दोगुना कर देते हैं। जब भी आप जीतते हैं, तो अगले दौर के लिए दांव एक डॉलर होगा। आप एक डॉलर की शर्त लगाकर दौर शुरू करते हैं।
उदाहरण के लिए, यदि आप 20 डॉलर से शुरू करते हैं, और आप पहले राउंड में शर्त जीतते हैं, तो अगले दो राउंड में शर्त हार जाते हैं और फिर चौथे राउंड में शर्त जीतते हैं, आप 20 + 1-1-2 से हार जाएंगे +4 = 22 डॉलर।
आपको फ़ंक्शन पूरा करने की उम्मीद है g
, जिसमें दो तर्क दिए गए हैं:
- पहला तर्क एक पूर्णांक है
a
जो प्रारंभिक राशि है जो हमारे पास है जब हम सट्टेबाजी शुरू करते हैं। - दूसरा तर्क एक स्ट्रिंग है
r
। परिणाम का ith चरित्र या तो 'W ’(जीत) या (L’ (हार) होगा, जो ith दौर के परिणाम को दर्शाता है।
आपका कार्य सभी राउंड खेले जाने के बाद आपके पास मौजूद राशि को लौटाना चाहिए।
यदि किसी बिंदु पर आपके पास शर्त के मूल्य को कवर करने के लिए आपके खाते में पर्याप्त पैसा नहीं है, तो आपको उस बिंदु पर रोकना और वापस करना होगा।
नमूना चला
1st round - Loss: 15-1 = 14
2nd round - Loss: 14-2 = 12 (Bet doubles)
3rd round - Loss: 12-4 = 8
4th round - Win: 8 + 8 = 16
5th round - Loss:16-1 = 15 (Since the previous bet was a win, this bet has a value of 1 dollar)
6th round - Loss: 15-2 = 13
7th round - Loss: 13-4 = 9
8th round - Loss: 9-8 = 1
1
इस मामले में फ़ंक्शन वापस आता है
विजेता निहित फ़ंक्शन परिभाषा की कम से कम संख्या के अनुसार निर्धारित होता है। यदि वांछित है तो भाषा द्वारा सहयोग करें। मुझे पता है कि मेरा सुधार किया जा सकता है!