Menu
Coddy logo textTech

Groupes d'anagrammes

Fait partie de la section Logique et Flux du Journey Swift de Coddy — leçon 54 sur 56.

challenge icon

Défi

Moyen

Deux mots sont des anagrammes si leurs lettres triées correspondent : listen et silent se trient tous deux en eilnst.

Lisez une seule ligne d'entrée : une liste de mots séparés par des virgules (en minuscules, sans espace à l'intérieur des mots).

Groupez les mots par leur signature de lettres triées. Affichez, dans cet ordre :

  1. Une ligne par groupe contenant deux mots ou plus, au format <signature>: <word1>,<word2>,.... Au sein d'un groupe, conservez les mots dans l'ordre d'entrée. Triez les groupes par ordre alphabétique de signature.
  2. Total groups: <n> (nombre de groupes contenant deux mots ou plus).

Pour l'entrée listen,silent,abc,enlist,cab,xyz, la sortie est :

abc: abc,cab
eilnst: listen,silent,enlist
Total groups: 2

Essayez vous-même

let words = readLine()!.components(separatedBy: ",")

// À FAIRE : construire [signature : [mot]] ; afficher les groupes triés de taille >= 2 ;
// puis afficher 'Total groups: <n>'

Toutes les leçons de Logique et Flux