#54176: 我明明打的跟cpe考試的時候一樣,為什麼考試的時候測資不會過,但在這裡打就會通過,傻眼欸


lily503 (unknown)


#include <iostream>
#include<vector>
#include <algorithm>
using namespace std;
int m;
bool cmp(int a,int b){
int ra=a%m;
int rb=b%m;
if(ra!=rb) return ra<rb;
bool aood=(a&1);
bool bood=(b&1);
if(aood!=bood) return aood;
if(aood&&bood) return a>b;
if(!aood&&!bood) return a<b;
}

int main(){
int n;

while(cin >> n >> m){
if(n==0 && m==0){
cout << "0" << " " << "0";
break;
}
cout << n << " " << m << "\n";

vector <int> a(n,0);
for(int i=0;i<n;i++)
cin >> a[i];

sort(a.begin(),a.end(),cmp);



for(int x:a)
cout << x << "\n";
}

return 0;
}

我明明打的跟cpe考試的時候一樣,為什麼考試的時候測資不會過,但在這裡打就會通過,傻眼欸