박스는 링크로 연결해야 한다. 하나의 링크는 두 개 이상의 박스를 연결할 수 있으며, 반드시 `+`에 연결되어야 한다. 부모 박스는 위에, 자식 박스는 아래에 있어야 한다. 박스와 링크는 서로 겹칠 수 없다.
| | | || ----------------- | --------------------------------------------------------- | ----------------------------------------------------------------------------- || ```+|o|+``` | ``` + | o---o---o| |+ +``` | ``` + | o-----o-----o| |+ +``` |
자식이 한 명인 경우에는 가장 왼쪽 그림의 링크를 사용한다. 자식이 둘 이상인 경우에는 가운데에서 갈라지는 링크를 사용하며, 왼쪽에 나이가 많은 자식을, 오른쪽에 나이가 적은 자식을 둔다.
링크는 수평 방향으로 늘일 수 있으며, 이때 왼쪽과 오른쪽의 `-` 개수는 같아야 한다. 링크는 수직 방향으로는 늘일 수 없다.
각 표본의 정보가 주어졌을 때, 가계도를 그리는 데 필요한 문자의 개수를 구하는 프로그램을 작성하시오. 단, 공백은 세지 않고 `-`, `|`, `+`, `o`와 이름 글자만 센다.