Farmer John possède une ferme familiale transmise sur plusieurs générations, et les origines de ses vaches remontent aussi à plusieurs générations sur cette ferme. En consultant d’anciens registres, il veut connaître les liens entre les vaches actuelles. Aidez-le !
Entrée
Première ligne : $N$ ($1 \leq N \leq 100$) puis deux noms de vaches. Chaque nom est une chaîne d’au plus $10$ majuscules ($A \ldots Z$). Il veut connaître leur lien.
Les $N$ lignes suivantes contiennent $X$ et $Y$, indiquant que $X$ est la mère de $Y$.
Sortie
Affichez une ligne indiquant le lien entre les deux vaches de la première ligne (appelées BESSIE et ELSIE ci-dessous par simplicité). Types possibles :
Si elles ont la même mère, affichez
SIBLINGS.BESSIE peut descendre directement d’ELSIE, qui est sa mère, grand-mère, arrière-grand-mère, arrière-arrière-grand-mère, etc. Affichez
ELSIE is the (relation) of BESSIE, où (relation) est le lien adapté, par exemplegreat-great-grand-mother.Si ELSIE est l’enfant d’un ancêtre de BESSIE (sans être elle-même ancêtre ou sœur), elle est sa tante. Enfant de sa grand-mère :
ELSIE is the aunt of BESSIE; de son arrière-grand-mère :ELSIE is the great-aunt of BESSIE; de son arrière-arrière-grand-mère :ELSIE is the great-great-aunt of BESSIE, et ainsi de suite.Si elles sont liées autrement (ancêtre commun), ce sont des cousines : affichez
COUSINS.Sans ancêtre commun, ou si aucune ne descend directement de l’autre, affichez
NOT RELATED.
Le schéma illustre les seuls liens à considérer. «Nièce» (fille d’une sœur) est inutile : si BESSIE est la nièce d’ELSIE, ELSIE est sa tante.
Exemples
Entrée 1
7 AA BB MOTHER AA GGMOTHER BB MOTHER SISTER GMOTHER MOTHER GMOTHER AUNT AUNT COUSIN GGMOTHER GMOTHER
Sortie 1
BB is the great-aunt of AA
Auteur du problème : Brian Dean