Menu
Coddy logo textTech

Sorting

Lição 25 de 25 do curso Desafios de Programação: Volume 2 da Coddy.

Na programação moderna, existem muitos métodos diferentes de ordenação e busca. Temos bubble sort, merge sort, etc. Se você for capaz de trocar apenas dois elementos adjacentes de uma sequência, ou basicamente trocar dois vizinhos, exiba a quantidade total de trocas adjacentes que você precisa fazer para ordenar a sequência.

challenge icon

Desafio

Difícil

Escreva um programa que leia um número natural N da entrada padrão. Na linha seguinte, insira N números representando a sequência. Continue realizando trocas adjacentes na sequência até que ela esteja ordenada do menor para o maior número. Imprima o número total de trocas adjacentes necessárias para ordenar a sequência.

Entrada
5
4 2 1 5 3

Saída
5

Explicação
[4 | 2]   2 4 1 5 3
[4 | 1]   2 1 4 5 3
[1 | 2]   1 2 4 5 3
[5 | 3]   1 2 4 3 5
[3 | 4]   1 2 3 4 5

Experimente você mesmo

#include <stdio.h>

int main() {
    // Escreva o código aqui
    return 0;
}

Todas as lições de Desafios de Programação: Volume 2