Cod sursa(job #3030991)

Utilizator TirilaPatricTirila Patric-Gabriel TirilaPatric Data 18 martie 2023 10:33:34
Problema Sortare prin comparare Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.94 kb
#include <iostream>
#include <vector>
#include <algorithm>
#include <random>
#include <ctime>
#include <ratio>
#include <chrono>
#include <fstream>

using namespace std;

vector<int> sortare(vector<int> V){
    int dist, size = V.size(), j, i;

    dist = V.size() / 2;
    while(dist > 0){

        for (i = dist; i < size; i += 1){
            for (j = i; j >= dist; j -= dist) {
                if (V[j - dist] <= V[i])
                    break;
                else
                    V[j] = V[j - dist];
            }

            V[j] = V[i];
        }

        dist/=2;
    }


    return V;
}

int main(){
    ifstream f("algsort.in");
    ofstream g("algsort.out");
    vector<int> V;
    int a, N;
    f>>N;
    while(N>0){
        f>>a;
        V.push_back(a);
        N--;
    }
    V = sortare(V);
    for(long unsigned int i=0; i<V.size(); i++){
        g<<V[i]<<" ";
    }
    return 0;
}