Cod sursa(job #2900775)

Utilizator KalasHaulica Tudor Kalas Data 12 mai 2022 09:35:24
Problema Sortare prin comparare Scor 60
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.75 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("algsort.in");
ofstream fout("algsort.out");
int a[100001],n;
void citire()
{fin>>n;
 int i;
 for(i=1;i<=n;i++)
   fin>>a[i];

}
void interclasare(int s ,int m,int d)
{ int i,j,k,temp[n];
    i=s;j=m+1;k=0;
    while(i<=m&&j<=d)
    if(a[i]<a[j]) temp[++k]=a[i++];
      else temp[++k]=a[j++];
      while(i<=m) temp[++k]=a[i++];
      while(j<=d) temp[++k]=a[j++];
   for(i=s,k=1;i<=d;i++,k++) a[i]=temp[k];

}
 void MS(int s,int d)
 {  if(s<d)
 {int m=(s+d)/2;
   MS(s,m);
   MS(m+1,d);
     interclasare(s,m,d);
 }
 }
 void afis()
 {int i;
  for(i=1;i<=n;i++)
    fout<<a[i]<<" ";

 }
int main()

{  citire();
    MS(1,n);
    afis();
    return 0;
}