CPE 1. Sort! Sort!! and Sort!!!

 avatar
user_3763047219
c_cpp
2 years ago
1.3 kB
2
Indexable
Never
#include<iostream>
using namespace std;
#include <string>

void swap(int &n1,int &n2){
    int tmp=n1;
    n1=n2;
    n2=tmp;
}

int main(){
    int a=0,b=0,end1=-1,end2=-1;
    cin >> a >> b;
    int num[a],mod[a];
    for (int i=0;i<a;i++){
        cin >>num[i];
        mod[i]=num[i]%b;

    }
    cin >> end1>>end2;

    for(int i=0; i<a; i++){
        for(int j=i+1; j<a; j++){
            if(mod[i]>mod[j]){
                swap(mod[i],mod[j]);
                swap(num[i],num[j]);
            }
            else if(mod[i]==mod[j]){
                if(num[i]%2==0 && num[j]%2!=0){
                    swap(mod[i],mod[j]);
                    swap(num[i],num[j]);
                }
                else if(num[i]%2!=0 && num[j]%2!=0){
                    if(num[i]<num[j]){
                        swap(mod[i],mod[j]);
                        swap(num[i],num[j]);
                    }
                }
                else if(num[i]%2==0 && num[j]%2==0){
                    if(num[i]>num[j]){
                        swap(mod[i],mod[j]);
                        swap(num[i],num[j]);
                    }
                }
            }
        }
    }

    cout << a<<" "<<b<<endl;
    for (int i=0;i<a;i++){
        cout << num[i]<<'\n';
    }
    cout << 0<<" "<<0;

}