Cod sursa(job #3003552)

Utilizator AndreiKatsukiAndrei Dogarel AndreiKatsuki Data 15 martie 2023 19:52:10
Problema Sortare prin comparare Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.71 kb
#include <bits/stdc++.h>

using namespace std;

ifstream f("algsort.in");
ofstream g("algsort.out");

int a[500005];

void shellSort(int a[], int n){
    for(int interval = n / 2; interval > 0; interval /= 2){
        for(int i = interval; i <= n; ++i){
            int temp = a[i];
            int j = i;
            while(j >= interval && a[j - interval] > temp){
                a[j] = a[j - interval];
                j = j - interval;
            }
            a[j] = temp;
        }
    }
}

int main(){
    int n;
    f >> n;
    for(int i = 1; i <= n; ++i){
        f >> a[i];
    }
    shellSort(a, n);
    for(int i = 1; i <= n; ++i){
        g << a[i] << " ";
    }
    return 0;
}