गैर-नकारात्मक पूर्णांक की एक सरणी को देखते हुए, आपका कार्य केवल इसके कुछ तत्वों को रखना है, जैसा कि नीचे वर्णित है।
मान लीजिए कि सरणी है
[1, 3, 2, 4, 11, 5, 2, 0, 13, 10, 1]
।सबसे पहले, सरणी के पहले तत्व मिल
n
। पहलेn
तत्वों को रखें और अगले को त्यागें (n+1
वें को त्यागें )। नया ऐरे है[1, 2, 4, 11, 5, 2, 0, 13, 10, 1]
।फिर, आप निकाले गए तत्व का अनुसरण करते हैं और ठीक उसी कार्य को करते हैं। प्रक्रिया को फिर से लागू करते हुए, हम प्राप्त करते हैं
[1, 2, 11, 5, 2, 0, 13, 10, 1]
आप इस प्रक्रिया को तब तक दोहराते हैं जब तक कि आप सरणी के सीमा के बाहर नहीं पहुँच जाते हैं / सरणी में कोई तत्व नहीं बचे हैं। हम रोकते हैं क्योंकि
11
सरणी की लंबाई से अधिक है।अब आपको परिणाम का उत्पादन करना चाहिए।
इनपुट / आउटपुट किसी भी मानक रूप में लिया / दिया जा सकता है। सरणी कभी खाली नहीं होगी, और इसमें केवल गैर-नकारात्मक पूर्णांक होंगे। सभी मानक कमियां निषिद्ध हैं।
यह कोड-गोल्फ है इसलिए बाइट्स जीत में सबसे छोटा कोड है!
परीक्षण के मामलों
इनपुट -> आउटपुट [१, २, ३, ४, ५] -> [१, ३, ४] [६, १, ०, ५, ६] -> [६, १, ०, ५, ६] [1, 3, 2, 4, 11, 5, 2, 0, 13, 10, 1] -> [1, 2, 11, 5, 2, 0, 13, 10, 1] [२, २, २, २, २, २] -> [२, २] [१, २, ३, १, २, ३, १, २, ३] -> [१, २] [३, १, २, ४, ०] -> [] *
* अंतिम परीक्षण मामले में शामिल है 0
, इसलिए मैंने इस तरह की प्रक्रिया को पोस्ट करने का फैसला किया, जो स्पष्ट है:
[3, 1, 2, 4, 0] --> [3, 1, 2, 0] --> [1, 2, 0] --> [1, 0] --> [0] --> [] )
2
बजाय पहले चरण में क्यों निकाला जाता है 3
?
[1, 2, 3, 1, 2, 3, 1, 2, 3]
n
" पर जाते हैं, तो आप हमेशा n
तत्वों को रखने के लिए सरणी की शुरुआत से शुरू करते हैं? नहीं (जैसा कि मैंने पहली नज़र में सोचा था) उन n
तत्वों को रखें जहाँ n
आप पहले तत्व का मूल्यांकन कर रहे हैं?