三姑六婆 是一款 Android 端的趣味实用应用,能够通过计算机的形式帮你“计算”出亲戚的称呼。
三姑六婆能先帮你搞定对方怎么称呼,比如
1 父亲 的 母亲 的 丈夫 的 妻子 的 儿子(比父亲年长)应该叫做 伯父。
个人觉得可以用状态机来做:
1 2 3 4 | 状态 = {我, 父亲, 母亲, 姑伯等全部称谓} 字母表 = {兄, 妹, 夫, 妻等所有直接关系} 转移函数 = { f(父, 兄) = 伯父, f(兄, 兄) = 兄, 按实际情况转移} 初始状态 = {我} |
但要出现家族内通婚,近亲跨辈份的问题……
所以想问一下有没有什么更好的实现方式?