Conscience de la position
Votre tâche consiste à générer un programme qui, pour chaque permutation de ses caractères (qui inclut le programme d'origine), affiche les positions de chaque caractère par rapport au programme d'origine.
Si votre programme est
Derp
vous devez sortir
[0, 1, 2, 3]
(ou un équivalent). C'est parce que se D
trouve dans la 0
th position, e
est dans le 1
st, r le 2
nd et p
le 3
rd.
Prenons un autre programme qui est le programme d'origine, mais avec ses caractères permutés:
epDr
Vous devez sortir
[1, 3, 0, 2]
car se e
trouve en première 1
position du programme d'origine, p
est en première 3
position, D
la 0
th et r
la 2
nd.
Si le programme d'origine comporte deux caractères répétitifs:
abcda -> [0, 1, 2, 3, 4]
Ensuite, pour la permutation, le 0
et le 4
dans le tableau doivent être dans l'ordre croissant:
baadc -> [1, 0, 4, 3, 2] (0 first, then 4)
Règles:
- Votre programme doit contenir au moins deux caractères uniques.
La plupart des
floor(n/2)
personnages doivent être identiques.aabb (acceptable) aaaabc (not acceptable, only floor(6/2) = 3 a's allowed)
La sortie de votre programme peut être soit un tableau (ou quelque chose de similaire) contenant toutes les positions des caractères dans l'ordre, soit une chaîne avec n'importe quel délimiteur, donc ce sont parfaitement bien:
[0, 1, 2, 3] 0,1,2,3 0 1 2 3
12
en R serait-il valide? Il serait simplement imprimé 12
et s'il était permuté; 21
.