Pagini recente » Cod sursa (job #3281015) | Cod sursa (job #2163020) | Cod sursa (job #1461232) | Cod sursa (job #1683671) | Cod sursa (job #2136629)
#include<bits/stdc++.h>
int n, i, v[500000];
const int bufferSize = 32768;
int pos = 0; char buffer[bufferSize];
void inline read(int &num)
{
num = 0;
while(buffer[pos] < 48 | buffer[pos] > 57)
{
if(++pos == bufferSize)
{
fread(buffer, 1, bufferSize, stdin);
pos = 0;
}
}
while(buffer[pos] > 47 & buffer[pos] < 58)
{
num = num * 10 + buffer[pos] - 48;
if(++pos == bufferSize)
{
fread(buffer, 1, bufferSize, stdin);
pos = 0;
}
}
}
char outBuffer[5000000], *p = outBuffer;
void inline itoa(int x)
{
int digits = 1;
for(int i = x; i /= 10; ++digits);
for(int i = digits - 1; ~i; --i)
{
*(p + i) = x % 10 + 48, x /= 10;
}
p += digits; *p++ = 32;
}
main()
{
std::ifstream f("algsort.in");
for(read(n); i < n; read(v[i++]));
for(std :: sort(v, v + n); i; itoa(v[n - i--]));
freopen("algsort.out", "w", stdout);
puts(outBuffer);
}