Pagini recente » Cod sursa (job #3252987) | Cod sursa (job #3039268) | Cod sursa (job #1921430) | Cod sursa (job #896537) | Cod sursa (job #2136028)
#include <bits/stdc++.h>
int N, x; std :: vector<int> v;
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;
}
}
}
const int outBufferSize = 200000;
char outBuffer[outBufferSize];
void inline itoa(int x)
{
int digits = 1;
for(int i = x; i /= 10; ++digits);
for(int i = digits - 1; ~i; --i)
{
outBuffer[pos + i] = x % 10 + 48, x /= 10;
}
pos += digits; outBuffer[pos++] = 32;
if(outBufferSize - pos < 13)
{
outBuffer[pos] = 0;
printf("%s", outBuffer);
pos = 0;
}
}
int main()
{
freopen("algsort.in", "r", stdin);
freopen("algsort.out", "w", stdout);
read(N);
for(int i = 1; i <= N; i++)
{
read(x); v.push_back(x);
}
sort(v.begin(), v.end());
pos = 0;
for(int i : v) itoa(i);
outBuffer[pos] = 0;
puts(outBuffer);
return 0;
}