ソースコード
#define _USE_MATH_DEFINES
#include <iostream>
#include <math.h>
#include <climits>
#include <algorithm>
#include <functional>
#include <vector>
#include <queue>
#include <map>
#include <set>
#include <string>
using namespace std;
typedef long long ll;
typedef pair<ll, ll> P;
const ll MD = 1000000007;
/* sample input
*/
int main()
{
int n, m;
int a[1001];
cin >> n >> m;
for (int i = 0; i < n; i++) {
cin >> a[i];
}
for (int i = 1; i <= m; i++) {
for (int j = 0; j < n - 1; j++) {
if (a[j] % i > a[j + 1] % i) {
int tmp = a[j];
a[j] = a[j + 1];
a[j + 1] = tmp;
}
}
}
for (int i = 0; i < n; i++) {
cout << a[i];
//if (i != n - 1) {
cout << endl;
//}
}
return 0;
}