Le phénomène dit de Will Rogers décrit un moyen d'ajuster les statistiques en augmentant la moyenne en deux (multi) ensembles lorsqu'un élément est déplacé entre les deux ensembles. Comme exemple simple, considérons les deux ensembles
A = {1, 2, 3}
B = {4, 5, 6}
Leurs moyennes arithmétiques sont 2
et 5
, respectivement. Si nous passons le 4
à A
:
A = {1, 2, 3, 4}
B = {5, 6}
Maintenant, les moyennes sont 2.5
et 5.5
, respectivement, donc les deux moyennes ont été relevées par un simple regroupement.
Comme autre exemple, considérons
A = {3, 4, 5, 6} --> A = {3, 5, 6}
B = {2, 3, 4, 5} --> B = {2, 3, 4, 4, 5}
Par contre, il n’est pas possible de relever les deux moyennes pour les ensembles
A = {1, 5, 9}
B = {4, 5, 7, 8}
Le défi
À partir de deux listes d’entiers non négatifs, déterminez s’il est possible d’élever les deux moyennes en déplaçant un seul entier d’une liste à l’autre.
La moyenne d'une liste vide n'est pas définie. Par conséquent, si l'une des listes ne contient qu'un seul élément, cet élément ne peut pas être déplacé.
Vous pouvez écrire un programme ou une fonction en prenant l’entrée via STDIN (ou l’alternative la plus proche), un argument de ligne de commande ou une argumentation de fonction et en générant le résultat via STDOUT (ou l’alternative la plus proche), une valeur de retour de fonction ou un paramètre de fonction (out).
La saisie peut être effectuée dans n’importe quelle chaîne ou format de liste.
Vous ne devez pas supposer que les éléments de chaque liste sont uniques, ni qu'ils sont triés. Vous pouvez supposer que les deux listes contiennent au moins un élément.
La sortie devrait être véridique si les deux moyennes peuvent être relevées en déplaçant un seul entier et une fausseté autrement.
C'est le code de golf, donc la réponse la plus courte (en octets) gagne.
Cas de test
Vérité
[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]
Fausseté:
[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]
Classements
Voici un extrait de pile permettant de générer un classement régulier et un aperçu des gagnants par langue.
Pour vous assurer que votre réponse apparaît, commencez votre réponse par un titre, en utilisant le modèle Markdown suivant:
# Language Name, N bytes
où N
est la taille de votre soumission. Si vous améliorez votre score, vous pouvez conserver les anciens scores en les effaçant. Par exemple:
# 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
et 9
plus, ce qui augmenterait les deux moyennes, mais vous ne pouvez pas le faire en déplaçant une seule.