#include <stdio.h>
#include <malloc.h>
#include <stdlib.h>

int comp(const void* a_, const void* b_) {
    int a = *(const int*)a_;
    int b = *(const int*)b_;

    if (abs(a % 2) > abs(b % 2)) return -1;

    if (abs(a % 2) < abs(b % 2)) return  1;

    if (a % 2) return a - b;
    else return b - a;
    }


int main() {
    int count;
    printf("count: ");
    scanf("%d", &count);
    int* array = malloc(sizeof(int) * count);

    for (int i = 0; i < count; i++) {
        printf("%d element: ", i + 1);
        scanf("%d", &array[i]);
        }

    qsort(array, count, sizeof(int), comp);

    for (int i = 0; i < count; i++) {
        printf("%d  ", array[i]);
        }
    }

