परिचय
इस चुनौती में मूल अंक n से y अंकों को निकालने वाली सबसे बड़ी संख्या है, जिसमें x अंक हैं।
यह मानते हुए कि y = 2 अंक y=2 n=5263 x=4निकालने वाली संभावित संख्याएँ हैं:
[52, 56, 53, 26, 23, 63]
तो, सबसे बड़ी संख्या है 63जो इस उदाहरण के लिए आउटपुट होना चाहिए।
एक और तर्क होगा: प्रत्येक y के लिए, बाएं से दाएं अंक की खोज करें जो दाएं अगला अंक अधिक है, फिर इसे हटा दें, जब कोई मिलान नहीं होता है, तो अंतिम y- अंकों को हटा दें ।
y=3 n=76751432 x=8समझाने के लिए उपयोग करना :
y=3
76751432
-^------ remove 6 because right next 7 is greater
y=2
7751432
---^--- remove 1 because right next 4 is greater
y=1
775432
-----^ the search failed, then remove last y digits
result = 77543
ऊपर बताए गए दोनों तरीके काम करते हैं .. बेशक, आप दूसरी विधि का भी उपयोग कर सकते हैं :)
चुनौती
संख्या n में 8 से अधिक अंक नहीं होंगे, और y हमेशा शून्य से अधिक और x से कम होगा ।
सख्त इनपुट प्रारूप से बचने के लिए, आप मानों का उपयोग कर सकते हैं: y n xजिस तरह से आप पसंद करते हैं: फ़ंक्शन, कच्चे इनपुट या किसी अन्य मान्य तरीके के पैरामीटर के रूप में। बस यह कहना न भूलें कि आपने अपने उत्तर में ऐसा कैसे किया।
आउटपुट परिणाम संख्या होना चाहिए।
यह कोड-गोल्फ है , बाइट्स जीत में सबसे छोटा जवाब।
उदाहरण इनपुट और आउटपुट
फिर से: आपको बहुत सख्त होने की आवश्यकता नहीं है :)
4 1789823 7 -> 983
1 54132 5 -> 5432
3 69314 5 -> 94
2 51794 5 -> 794
संपादित करें
मैंने इस तथ्य को प्रतिबिंबित करने के लिए इनपुट ऑर्डर को बदल दिया कि आप में से कुछ को समस्या को हल करने के लिए x मान की आवश्यकता नहीं हो सकती है। x अब एक वैकल्पिक मान है।
xयह एक बेकार जानकारी है।
xइनपुट के रूप में कोड को छोटा कर सकते हैं। (बिंदु में मामला: मेरा जूलिया जवाब।)