इस चुनौती में एक सरणी के तत्वों को समय के डिब्बे में रखना है। इनपुट घटनाओं के समय का प्रतिनिधित्व करने वाले सकारात्मक पूर्णांकों का एक गैर-घटता हुआ सरणी होगा, और एक पूर्णांक जो प्रत्येक बिन के आकार का प्रतिनिधित्व करता है। एक उदाहरण से शुरू करते हैं। हम इनपुट ऐरे A
और आउटपुट ऐरे को कहते हैं O
।
`A = [1,1,1,2,7,10]` and `bin_size = 2`.
`O = [4,0,0,1,1]`.
क्यों ? एक साथ bin_size = 2
, हम निम्नलिखित अंतराल होगा: (0,2], (2,4], (4,6], (6,8], (8,10]
, जहां चार वस्तुओं (1,1,1,2)
पहले अंतराल के भीतर कर रहे हैं (0,2]
, दूसरे और तीसरे के अंतराल में कोई नहीं, एक 7
अंतराल में (6,8]
, और एक 10
अंतराल में (8,10]
।
आपके कोड को लंबाई से bin_size
शुरू होने वाले हर अंतराल पर विचार करना चाहिए 0
और गिनना चाहिए कि A
प्रत्येक में कितने नंबर हैं। आपको हमेशा एक अंतराल के दाहिने हाथ के अंत को एक बिन में शामिल करना चाहिए ताकि ऊपर के उदाहरण 2
में गिनती में शामिल हो 4
। आपका कोड इनपुट और आउटपुट की लंबाई के योग में रैखिक समय में चलना चाहिए।
और ज्यादा उदाहरण:
`A = [1,2,7,12,15]` and `bin_size = 5`.
`O = [2, 1, 2]`.
`A = [1,2,7,12,15]` and `bin_size = 3`.
`O = [2,0,1,1,1]`.
आप मान सकते हैं कि इनपुट और आउटपुट आपको सुविधाजनक लगे किसी भी प्रारूप में दिए जा सकते हैं। आप अपनी पसंद की किसी भी भाषा और लाइब्रेरी का उपयोग कर सकते हैं।
bin_size
, क्या हमें वास्तव में इन्हें संभालना चाहिए? ऐसा लगता है कि अधिकांश उत्तर देते हैं, लेकिन यदि ऐसा है, तो भ्रम को रोकने के लिए इस परिदृश्य के लिए एक परीक्षण मामला जोड़ना अच्छा होगा।
0
की अनुमति है? इसलिए वापसी[2,0,1,1,1,0]
करने के बजाय[2,0,1,1,1]
?