Bonjour,
Tout d'abord, voici le sujet de l'énoncé:
LIMITE DE MEMOIRE
1024 ko
LIMITE DE TEMPS
5000 ms
ENONCE
On s'intéresse à un programme de reconnaissance vocale.
Le but est de partir d'une suite de phonèmes enregistrés pour arriver à un mot connu.
Pour cela, l'on vous fournit un graphe orienté de transitions. Chaque état est numéroté par un nombre entre 0 et N-1 (N
Pour chaque phonème (qui sera représenté par un caractère ASCII), en partant d'un état donné, on peut se rendre sur ceux des états voisins qui sont reliés à l'état courant par un arc étiqueté par le phonème en question. Le score d'un chemin est la somme des scores des arêtes qui le composent (en fait, des produits de probabilités).
L'on vous donne un sommet/état de départ et une liste de phonèmes enregistrés. Vous devez donner le sommet d'arrivée le
plus probable, c'est à dire l'extrémité d'un chemin de score maximal étiqueté par le mot enregistré. (S'il y en a
plusieurs possibles, retournez le sommet dont le numéro est le plus petit).
ENTREE
Le nombre N sur la première ligne.
Le numéro de l'état initial sur la deuxième.
Un nombre M sur la troisième ligne, et sur les M lignes suivantes, deux entiers i et j, un caractère ASCII c, et un
score s, séparés par des espaces et représentant une transition i->j étiquetée par le phonème c avec le score (la
probabilité de transition, en fait) f.
Sur la dernière ligne, le mot à lire, d'un maximum de 100 lettres, et qui peut être constitué de tous les caractères
ASCII sauf '\n'.
SORTIE
Le numéro de l'état final tel que défini plus haut, suivi d'un saut de ligne.
Ce n'est pas que je bloque pour cet exercice, mon algo passe les 6 premiers tests. Toutefois, bien qu'il échoue aux
autres, il est vraiment dommage de ne pas pouvoir passer aux autres problèmes, en ayant trouvé l'algorithme. Les
conditions de résolution d'un problème me paraisse un peu trop strict, quant aux informations fournies en sortie. Il
devient en effet très difficile de débugger son programme( les tests 7 et plus contiennent il me semble 26000 liens -_-
).
En résume, il me paraitrait judicieux de baisser les exigences de validatité d'un algo.
Ca peut sembler flemmard, mais bon, au bout d'un moment c'est lassant d'être forcé pour arriver au problème suivant, d'y aller à coup d'affichage d'énoncé...
Si toutefois vous voulez examiner mon code ( relativement court, mais j'essaierai de le commenter au possible \^\^ ), je
suis tout disposé à le mettre.
Merci de m'avoir lu