/// no time to waste
#include <bits/stdc++.h>
using namespace std;
int n;
int a[11], used[11];
void dequy(int i) {
if(i > n) {
for(int j=1;j<=n;j++) cout << a[j] << ' ';
cout << '\n';
return;
}
for(int j=1;j<=n;j++) {
if(!used[j]) {
used[j] = 1;
a[i] = j;
dequy(i + 1);
used[j] = 0;
}
}
return;
}
int32_t main() {
ios::sync_with_stdio(false);
cin.tie(0), cout.tie(0);
freopen("hoanvi.inp", "r", stdin);
freopen("hoanvi.out", "w", stdout);
cin >> n;
dequy(1);
return 0;
}
/// code này chạy đúng (có thể), nhưng mà test cô chắc chắn được 1 điểm nhé=)). Vì test cô không
/// cho in khoảng cách trên 1 dòng
Ly8vIG5vIHRpbWUgdG8gd2FzdGUKI2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbjsKaW50IGFbMTFdLCB1c2VkWzExXTsKCnZvaWQgZGVxdXkoaW50IGkpIHsKICAgIGlmKGkgPiBuKSB7CiAgICAgICAgZm9yKGludCBqPTE7ajw9bjtqKyspIGNvdXQgPDwgYVtqXSA8PCAnICc7CiAgICAgICAgY291dCA8PCAnXG4nOwogICAgICAgIHJldHVybjsKICAgIH0KCiAgICBmb3IoaW50IGo9MTtqPD1uO2orKykgewogICAgICAgIGlmKCF1c2VkW2pdKSB7CiAgICAgICAgICAgIHVzZWRbal0gPSAxOwogICAgICAgICAgICBhW2ldID0gajsgCiAgICAgICAgICAgIGRlcXV5KGkgKyAxKTsKICAgICAgICAgICAgdXNlZFtqXSA9IDA7CiAgICAgICAgfQogICAgfQogICAgcmV0dXJuOwp9CgppbnQzMl90IG1haW4oKSB7CiAgICBpb3M6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CiAgICBjaW4udGllKDApLCBjb3V0LnRpZSgwKTsKICAgIGZyZW9wZW4oImhvYW52aS5pbnAiLCAiciIsIHN0ZGluKTsKICAgIGZyZW9wZW4oImhvYW52aS5vdXQiLCAidyIsIHN0ZG91dCk7CgogICAgY2luID4+IG47CiAgICBkZXF1eSgxKTsKICAgIHJldHVybiAwOwp9Ci8vLyBjb2RlIG7DoHkgY2jhuqF5IMSRw7puZyAoY8OzIHRo4buDKSwgbmjGsG5nIG3DoCB0ZXN0IGPDtCBjaOG6r2MgY2jhuq9uIMSRxrDhu6NjIDEgxJFp4buDbSBuaMOpPSkpLiBWw6wgdGVzdCBjw7Qga2jDtG5nCi8vLyBjaG8gaW4ga2hv4bqjbmcgY8OhY2ggdHLDqm4gMSBkw7JuZw==