시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
1 초 | 128 MB | 793 | 243 | 189 | 40.998% |
현주와 윤주는 일요일마다 재미있는 단어 게임을 하면서 시간을 보낸다. 단어 게임을 하던 중, 두 사람은 서로 좋아하지 않는 단어가 있다는 사실을 알게 되었다.
두 단어 A와 B가 있을 때, A가 B보다 사전순으로 앞서는데, B'가 A' 보다 사전 순으로 앞서면, 두 단어는 서로 좋아하지 않는다. 여기서 X'는 단어 X를 뒤집은 것을 말한다. (X = "kamen"이면, X'는 "nemak" 이다)
예를 들어, "lova"와 "novac"은 서로 좋아하고, "aron"과 "sunce"는 서로 좋아하지 않는다.
단어의 목록이 주어졌을 때, 서로 좋아하지 않는 단어의 쌍의 개수를 구하는 프로그램을 작성하시오.
첫째 줄에 단어의 개수 N (2 ≤ N ≤ 100,000)이 주어진다.
둘째 줄부터 N개의 줄에는 한 줄에 하나씩 단어가 주어진다. 단어는 영어 알파벳 소문자로만 이루어져 있으며, 길이는 10개를 넘지 않는다. 같은 단어가 두 번 이상 주어지는 경우는 없다.
첫째 줄에 입력으로 주어진 단어 중에서 서로 좋아하지 않는 쌍의 개수를 출력한다.
4 lova novac aron sunce
3
2 lopta kugla
0
14 branimir vladimir tom kruz bred pit zemlja nije ravna ploca ko je zapalio zito
48
Olympiad > Croatian Highschool Competitions in Informatics > 2006 > National Competition #2 - Seniors 3번