Le défi
Écrivez une fonction ou un programme qui prend une chaîne composée d'un ou plusieurs pronoms personnels subjectifs , séparés par des signes + , comme argument. La sortie doit être un seul pronom, c'est-à-dire le résultat de la relation définie dans le paragraphe suivant.
Bien sûr, n'hésitez pas à éditer comme vous le souhaitez pour corriger les erreurs grammaticales qui sont sûrement présentes;)
C'est un défi de code-golf, donc le code le plus court l'emporte.
La relation
Le but de cette tâche est de traduire en «math-parlent» quelque chose que nous utilisons quotidiennement. Comment pensons-nous à "vous et moi"? Eh bien, "nous", n'est-ce pas? Donc, si l'entrée est You+I
la sortie doit être la chaîne We
. Avec plus de deux pronoms, il devrait ressembler à:
You+He+They
->You
La relation est définie comme ce tableau:
I You He We You They
I I We We We We We
You You You We You You
He He We You They
We We We We
You You You
They They
Le problème du «vous»
Eh bien, comme vous pouvez le voir, je ne suis pas un anglophone natif. Dans ma langue (l'italien), il y a une différence entre le pluriel you ( voi , en italien) et le singulier you ( tu ). Quand je pensais à ce défi, je ne pensais pas en anglais, donc il y a le problème qu'il est impossible de reconnaître si j'utilise une forme plurielle ou singulière. Heureusement (ou évidemment?), L'entrée / sortie ne change pas sous les deux formes, vous pouvez donc en utiliser une et vous couvrirez les deux cas!
À propos de l'entrée
L'entrée sera toujours sous la forme "Pronom + Pronom + Pronom" ... Les pronoms auront la première lettre en majuscule et le reste en minuscule. Les avantages ne seront pas entourés d'espaces, uniquement de pronoms. Une entrée vide est possible et le résultat doit être une sortie vide.
Prime
Un petit bonus de 15% si le programme va gérer deux nouveaux pronoms: Elle et Elle . Ils sont identiques à Lui, évidemment. N'oubliez pas que cette relation est réflexive, alors Elle -> Elle et Elle -> Elle. Par conséquent, toute combinaison qui ne comprend que She, He ou It doit les afficher.
Exemples
You+I -> We
You+He+They -> You
I+You+He+They -> We
They -> They
They+You -> You
You+You+I+You -> We
For Bonus
She -> She
She+He -> They
I+It+He -> We
It+You -> You
I+I=I
", car il ne peut y en avoir qu'un " I
" à partir d'un haut-parleur donné. Mais ne pouvait pas " He+He=They
"? Généralement, si vous dites " He
" deux fois dans cette construction, vous faites référence à deux sujets masculins différents , pas deux fois le même.