Cod sursa(job #2003030)

Utilizator thinkphpAdrian Statescu thinkphp Data 21 iulie 2017 15:40:04
Problema Sortare prin comparare Scor 40
Compilator c Status done
Runda Arhiva educationala Marime 1.04 kb
#include <stdio.h>
#include <malloc.h>
#define FIN "algsort.in"
#define FOUT "algsort.out"
#define SIZE 500005

int arr[ SIZE ],
    n;

void read() {

     int i;

     freopen(FIN, "r", stdin);

     scanf("%d", &n);

     for(i = 0; i < n; ++i) scanf("%d", &arr[ i ]); 
};

void _swap(int i, int j) {

     int aux;

         aux = arr[ i ];

         arr[ i ] = arr[ j ];

         arr[ j ] = aux; 
};


void bubblesort() {

     int i,

         swapped;
          
     do {

        swapped = 0;

        for(i = 0; i < n - 1; ++i) {

           if(arr[i] > arr[i+1]) {

              int temp = arr[ i ];

                  arr[ i ] = arr[ i + 1 ];
         
                  arr[ i + 1 ] = temp;

                  swapped = 1;
           }
        }

     }while( swapped );

};


void write() {

     int i;

     freopen(FOUT, "w", stdout);

     for(i = 0; i < n; ++i) printf("%d ", arr[ i ]); 
};


int main() {

    read(); 
    bubblesort(); 
    write();

 return(0);
};