Pendant que j'écrivais des chiffres, j'ai remarqué après un moment que mon clavier avait la Shifttouche enfoncée et bloquée et tout ce que j'écrivais était $%&
comme des caractères. Et pire encore, j'avais basculé entre les dispositions de clavier anglais et espagnol, donc je ne sais pas lequel j'ai utilisé pour chaque numéro.
Défi
Étant donné une chaîne contenant des caractères de symbole, essayez de deviner quel numéro j'ai écrit. Mon clavier produit les caractères suivants pour les chiffres lorsque vous Shiftappuyez sur:
1234567890
----------
!"·$%&/()= Spanish layout
!@#$%^&*() English layout
- L'entrée sera une chaîne non nulle et non vide composée des symboles ci-dessus.
- La sortie sera un numéro unique si la disposition du clavier peut être déduite de la chaîne (c'est-à-dire si la chaîne contient une
@
disposition anglaise a été utilisée, et si la chaîne contient une"
disposition espagnole a été utilisée) ou si le nombre est le même pour les deux mises en page (c'est-à-dire que l'entrée est!$
qui se traduit comme14
pour les deux mises en page); sinon la sortie sera les deux nombres possibles pour les deux dispositions si elle ne peut pas être déduite et les nombres résultants sont différents. - La chaîne d'entrée sera toujours écrite dans une seule disposition. Vous n'avez donc pas besoin de vous attendre
"@
en entrée.
Exemples
Input --> Output
------------------
/() 789 (Spanish layout detected by the use of /)
$%& 456,457 (Layout cannot be inferred)
!@# 123 (English layout detected by the use of @ and #)
()&! 8961,9071 (Layout cannot be inferred)
((·)) 88399 (Spanish layout detected by the use of ·)
!$ 14 (Layout cannot be inferred but the result is the same for both)
!!$$%% 114455 (Layout cannot be inferred but the result is the same for both)
==$" 0042/42 (Spanish layout, if a number starts with 0 you can choose to
omit them in the result or not)
Single character translations:
------------------------------
! 1
" 2
· 3
$ 4
% 5
& 6,7
/ 7
( 8,9
) 9,0
= 0
@ 2
# 3
^ 6
* 8
Il s'agit de code-golf , de sorte que le code le plus court pour chaque langue gagne!
·
est inutile pour l'espagnol, il n'est utilisé qu'en catalan.
{(8, 9, 6, 1), (9, 0, 7, 1)}
(pour le 4ème cas de test) est-elle acceptable?
·
difficile ...