KAOS - Kaos
Little Lovro likes to play games with words. During the last few weeks he realized that some words don't like each other.
The words A and B don't like each other if the word A is lexicographically before the word B, but the word B' is lexicographically before the word A', where X' stands for the word X reversed (if X = “kamen”, then X' = “nemak”). For example, the words “lova” and “novac” like each other, but the words “aron” and “sunce” don't like each other.
Given some set of the words, we define the degree of chaos of the set as the number of pairs of different words that don't like each other.
Write a program that, given a set of words, finds the chaos degree for the set.
The first line of input contains an integer N, 2 ≤ N ≤ 100 000.
Each of the following N lines contains one word – a sequence of at most 10 lowercase letters of the English alphabet ('a' – 'z'). There will be no two identical words in the set.
The first and only line of output should contain a single integer – the chaos degree of the given set of words.
Note: use 64-bit signed integer type (int64 in Pascal, long long in C/C++)
input input input
2 4 14
lopta lova branimir
kugla novac vladimir
output sunce kruz
When you are the 100th buddy to solve this question.
Filip K. Dosilovic:
@mehmetinal @cricycle problem was added because time limit on MCHAOS is not official time limit for the problem
@mehmetin, you're right. I think this problem should be removed.
This problem is the exact duplicate of MCHAOS. Only difference is the relaxed time limit.Last edit: 2015-10-06 11:25:33
a copy-paste-friendly version of examples above:
Filip K. Dosilovic:
@SRC: no, there is no space.Last edit: 2015-09-28 18:41:18
is that a space before lova and novac in the 2nd example?
@ravi12345: Empty words are not allowed.
My ACC solution gives result 47 in 3rd example. Also my brute-force algorithm gives 47 in this example :)
empty words are allowed or not?