तथाकथित विल रोजर्स घटना में दो तत्वों (दो) के बीच औसत को बढ़ाकर आँकड़ों को मोड़ने का एक तरीका बताया गया है जब एक तत्व को दो सेटों के बीच ले जाया जाता है। एक सरल उदाहरण के रूप में, दो सेटों पर विचार करें
A = {1, 2, 3}
B = {4, 5, 6}
उनके अंकगणित साधन क्रमशः हैं 2
और 5
। हम ले जाते हैं 4
करने के लिए A
:
A = {1, 2, 3, 4}
B = {5, 6}
अब औसत 2.5
और 5.5
क्रमशः हैं, इसलिए दोनों औसत एक साधारण रीग्रुपिंग के माध्यम से उठाए गए हैं।
एक अन्य उदाहरण के रूप में, विचार करें
A = {3, 4, 5, 6} --> A = {3, 5, 6}
B = {2, 3, 4, 5} --> B = {2, 3, 4, 4, 5}
दूसरी ओर, सेटों के लिए दोनों औसत बढ़ाना संभव नहीं है
A = {1, 5, 9}
B = {4, 5, 7, 8}
चुनौती
गैर-नकारात्मक पूर्णांक की दो सूचियों को देखते हुए, यह निर्धारित करें कि क्या एक सूची से दूसरी सूची में एक पूर्णांक को स्थानांतरित करके दोनों औसत बढ़ाना संभव है।
एक खाली सूची के औसत को परिभाषित नहीं किया गया है, इसलिए यदि किसी सूची में केवल एक तत्व है, तो इस तत्व को स्थानांतरित नहीं किया जा सकता है।
आप STDIN (या निकटतम विकल्प), कमांड-लाइन तर्क या फ़ंक्शन तर्क के माध्यम से इनपुट ले रहे हैं और STDOUT (या निकटतम विकल्प), फ़ंक्शन रिटर्न मान या फ़ंक्शन (आउट) पैरामीटर के माध्यम से परिणाम लिख सकते हैं।
इनपुट किसी भी सुविधाजनक स्ट्रिंग या सूची प्रारूप में लिया जा सकता है।
आपको यह नहीं मानना चाहिए कि प्रत्येक सूची में तत्व अद्वितीय हैं, न ही वे क्रमबद्ध हैं। आप मान सकते हैं कि दोनों सूचियों में कम से कम एक तत्व है।
आउटपुट सत्य होना चाहिए अगर दोनों औसत एक एकल पूर्णांक और फ़ॉसी को स्थानांतरित करके उठाए जा सकते हैं ।
यह कोड गोल्फ है, इसलिए सबसे छोटा उत्तर (बाइट्स में) जीतता है।
परीक्षण के मामलों
Truthy:
[1], [2, 3]
[1, 2, 3], [4, 5, 6]
[3, 4, 5, 6], [2, 3, 4, 5]
[6, 5, 9, 5, 6, 0], [6, 2, 0, 9, 5, 2]
[0, 4], [9, 1, 0, 2, 8, 0, 5, 5, 4, 9]
Falsy:
[1], [2]
[2, 4], [5]
[1, 5], [2, 3, 4, 5]
[2, 1, 2, 3, 1, 3], [5, 1, 6]
[4, 4, 5, 2, 4, 0], [9, 2, 10, 1, 9, 0]
लीडरबोर्ड
यहां एक नियमित लीडरबोर्ड और भाषा के अनुसार विजेताओं का अवलोकन करने के लिए एक स्टैक स्निपेट है।
यह सुनिश्चित करने के लिए कि आपका उत्तर दिख रहा है, कृपया अपना उत्तर शीर्षक मार्कडाउन टेम्पलेट का उपयोग करके शीर्षक के साथ शुरू करें:
# Language Name, N bytes
N
आपके प्रस्तुत करने का आकार कहां है। यदि आप अपने स्कोर में सुधार करते हैं, तो आप पुराने अंकों को हेडलाइन में रख सकते हैं, उनके माध्यम से स्ट्राइक करके। उदाहरण के लिए:
# Ruby, <s>104</s> <s>101</s> 96 bytes
<script>site = 'meta.codegolf'; postID = 5314; isAnswer = true; QUESTION_ID = 53913</script><script src='https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js'></script><script>jQuery(function(){var u='https://api.stackexchange.com/2.2/';if(isAnswer)u+='answers/'+postID+'?order=asc&sort=creation&site='+site+'&filter=!GeEyUcJFJeRCD';else u+='questions/'+postID+'?order=asc&sort=creation&site='+site+'&filter=!GeEyUcJFJO6t)';jQuery.get(u,function(b){function d(s){return jQuery('<textarea>').html(s).text()};function r(l){return new RegExp('<pre class="snippet-code-'+l+'\\b[^>]*><code>([\\s\\S]*?)</code></pre>')};b=b.items[0].body;var j=r('js').exec(b),c=r('css').exec(b),h=r('html').exec(b);if(c!==null)jQuery('head').append(jQuery('<style>').text(d(c[1])));if (h!==null)jQuery('body').append(d(h[1]));if(j!==null)jQuery('body').append(jQuery('<script>').text(d(j[1])))})})</script>
1
और 9
अधिक ले जा सकते हैं , जो औसत दोनों को बढ़ाएगा, लेकिन आप एक एकल को स्थानांतरित करके ऐसा नहीं कर सकते।