문제
Farmer John의 농장은 꽤 특이한 구조로 되어 있는데, 소들이 낮 동안 풀을 뜯는 들판 주위를 따라 커다란 원형 도로가 있습니다.
매일 아침, 소들은 이 도로를 건너 들판으로 들어가고, 저녁이 되면 다시 도로를 건너 헛간으로 돌아갑니다.
소들은 습관적인 동물이기 때문에, 매일 같은 경로로 도로를 건넙니다. 각 소는 들판으로 들어가는 지점과 나오는 지점이 서로 다르며,
모든 소의 진입/이탈 지점은 서로 다릅니다 (즉, 총 52개의 고유한 지점이 있습니다).
Farmer John은 정확히 26마리의 소를 키우고 있으며, 귀찮아서 이름을 A부터 Z까지 지었습니다.
(27번째 소를 들이면 어떻게 이름을 지어야 할지 고민 중입니다...)
따라서 도로 주변에는 총 52개의 도로 횡단 지점이 있으며,
Farmer John은 도로를 시계 방향으로 돌며 각 횡단 지점마다 소의 이름을 기록합니다.
이렇게 해서 만들어진 문자열은 총 52자의 대문자로 구성되며, 알파벳의 각 문자가 정확히 두 번씩 등장합니다.
Farmer John은 각 소가 횡단하는 경로를 보며, 어떤 소 쌍들이 서로 경로가 교차하는지 궁금해졌습니다.
그는 두 소 (a, b)의 경로가 서로 교차한다고 판단하는 기준을 다음과 같이 정의합니다:
소 a가 들어가는 지점에서 나오는 지점까지 이어지는 직선 경로가,
소 b의 직선 경로와 교차하는 경우, 이 두 소는 "교차하는 쌍 (crossing pair)"입니다.
Farmer John이 기록한 문자열을 바탕으로, 총 몇 쌍의 소들이 서로 교차하는지를 구해주세요.
입력
첫 줄에 52 글자의 문자열이 주어진다.
각 글자는 대문자 알파벳이며, 각 알파벳이 정확히 두 번씩 나타난다.
출력
서로 교차하는 소 쌍의 총 개수를 출력하세요.
예제
ABCCABDDEEFFGGHHIIJJKKLLMMNNOOPPQQRRSSTTUUVVWWXXYYZZ
1
A와 B의 경로가 교차한다.