#include<stdio.h>
void rearrange(int arr[],int n){
    if(n<=0){
        printf("Invalid input\n");
        return;
    }
    int negatives[n],positives[n];
    int neg_count=0,pos_count=0;
    for(int i=0;i<n;i++){
        if(arr[i]<0){
            negatives[neg_count++]=arr[i];
        }else{
            positives[pos_count++]=arr[i];
    }
}
for(int i=0;i<neg_count;i++){
    printf("%d ",negatives[i]);
}
for(int i=0;i<pos_count;i++){
    printf("%d ",positives[i]);
}
printf("\n");
}
int main(){
    int n;
    scanf("%d",&n);
    if(n<=0){
        printf("Invalid input\n");
        return 1;
    }
    int *arr=(int*)malloc(n*sizeof(int));
    if(arr==NULL){
        printf("Memory allocation failed\n");
        return 1;
    }
    for(int i=0;i<n;i++){
        scanf("%d",&arr[i]);
    }
    rearrange(arr,n);
    free(arr);
    return 0;
}