यह एक तरह का एडिट-डिस्टेंस प्रश्न है, और बहुत आसान है। मैं इस विषय पर अभी काफी दिमागी रूप से मृत हूं और अब तक इसका पता नहीं लगा सका हूं।
संख्याओं की एक श्रृंखला को देखते हुए, जैसे
[3, 1, 1, 1]
"चाल" की न्यूनतम संख्या के साथ कोई भी सबसे अधिक कुशलता से सभी संख्याओं को एक ही संख्या में कैसे बदल देगा? "चाल" से तात्पर्य किसी संख्या से किसी को जोड़ना या हटाना है।
उपरोक्त उदाहरण में, सबसे कुशल चाल होगी:
[1, 1, 1, 1]
इसके लिए 2 चालों की आवश्यकता होगी, पहली संख्या को दो बार कम करना।
मैं यह पता लगाने का सबसे अच्छा तरीका नहीं समझ सकता, सैकड़ों की संख्या में बहुत बड़ी सरणियाँ दी।
मैंने मूल रूप से गोल औसत संख्या (लंबाई से विभाजित सभी की राशि) की गणना करने की कोशिश की, और फिर उन्हें गणना औसत तक कम किया, लेकिन उपरोक्त उदाहरण ने इसे तोड़ दिया, जिसमें 2 के बजाय 4 चाल की आवश्यकता थी।
मुझे लगता है मैं समझ सकता हूं:
- औसत,
- साधन,
- मध्यस्थ
और उनमें से प्रत्येक की संपादित दूरी प्राप्त करें, न्यूनतम दूरी चुनें। हालाँकि, मुझे यकीन नहीं है कि यह हर एक उदाहरण में सही होगा। मुझे कैसे पता चलेगा?