Ordenação por mistura com determinação de inversões
PHP
Hard
sorting
Tarefa «Ordenação por mistura com determinação de inversões»
Dado um array de inteiros. É necessário implementar o algoritmo de ordenação por mistura (merge sort), que também conta o número de inversões no array. Uma inversão é um par de índices (i, j), tal que i < j e arr[i] > arr[j]. Imprimir o array ordenado e o número de inversões.
Formato de Entrada
Na primeira linha, um número inteiro N (1 ≤ N ≤ 10^5) — a quantidade de elementos. Na segunda linha, N números inteiros separados por espaço.
Formato de Saída
Na primeira linha, N números separados por espaço — o array ordenado em ordem crescente. Na segunda linha, um número inteiro — o número de inversões.
Exemplos
Exemplo 1
ENTRADA
Война и мир
Лев Толстой
1869
SAÍDA
Название: Война и мир, Автор: Лев Толстой, Год: 1869
Exemplo 2
ENTRADA
3
1 2 3
SAÍDA
1 2 3
0
Exemplo 3
ENTRADA
1984
Джордж Оруэлл
1949
SAÍDA
Название: 1984, Автор: Джордж Оруэлл, Год: 1949
main.php