Pagini recente » Cod sursa (job #702683) | Cod sursa (job #794284) | Cod sursa (job #2875886) | Cod sursa (job #1101752) | Cod sursa (job #682415)
Cod sursa(job #682415)
#include <cstdio>
#include <algorithm>
#define NMAX 500001
using namespace std;
int V[NMAX], N;
void read(void)
{
FILE *f = fopen("algsort.in", "r");
fscanf(f, "%d", &N);
for(int i = 1; i <= N; ++i)
fscanf(f, "%d", &V[i]);
fclose(f);
}
void sort(void)
{
int inj = N;
bool sw;
while( inj > 1 )
{
inj /= 2;
do
{
sw = 1;
for(int i = 1; i <= N - inj; ++i)
if( V[i] > V[i + inj] )
swap(V[i], V[i+inj]), sw = 0;
}while(!sw);
}
}
void print(void)
{
FILE *g = fopen("algsort.out", "w");
for(int i = 1; i <= N; ++i)
fprintf(g, "%d ", V[i]);
fclose(g);
}
int main(void)
{
read();
sort();
print();
return 0;
}