#include <iostream> #include <algorithm> #include <vector> #include <map> using namespace std; map <vector <int>, int> mapa; int main() { ios_base::sync_with_stdio(0); int n, i, j, k, z; cin>>n>>z; vector <int> kol; bool ok = 1; kol.push_back(0); for(i = 1; i <= n; i++) { kol.push_back(i); } int ktora = 0; while(ok) { next_permutation(kol.begin() + 1, kol.end()); bool wsz = 1; for(i = 1; i <= n; i++) if(kol[i] != i) wsz = 0; if(wsz) { cout<<"NIE"; return 0; } int l = 0, p = 0; for(i = 1; i <= n; i++) { for(k = i + 1; k <= n; k++) { if(kol[i] > kol[k]) l++; } } for(i = 1; i <= n; i++) { for(k = i + 1; k <= n; k++) { if(kol[i] < kol[k]) p++; } } //if(l == 5) // cout<<l<<" "<<p<<"\n\n"; if(l == p) { //cout<<l<<"\n"; //for(i = 1; i <= n; i++) // cout<<kol[i]<<" "; //cout<<"\n"; ktora++; if(ktora == z) { cout<<"TAK\n"; for(i = 1; i <= n; i++) cout<<kol[i]<<" "; cout<<"\n"; return 0; } } } //cout<<mapa.size()<<"\n"; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 | #include <iostream> #include <algorithm> #include <vector> #include <map> using namespace std; map <vector <int>, int> mapa; int main() { ios_base::sync_with_stdio(0); int n, i, j, k, z; cin>>n>>z; vector <int> kol; bool ok = 1; kol.push_back(0); for(i = 1; i <= n; i++) { kol.push_back(i); } int ktora = 0; while(ok) { next_permutation(kol.begin() + 1, kol.end()); bool wsz = 1; for(i = 1; i <= n; i++) if(kol[i] != i) wsz = 0; if(wsz) { cout<<"NIE"; return 0; } int l = 0, p = 0; for(i = 1; i <= n; i++) { for(k = i + 1; k <= n; k++) { if(kol[i] > kol[k]) l++; } } for(i = 1; i <= n; i++) { for(k = i + 1; k <= n; k++) { if(kol[i] < kol[k]) p++; } } //if(l == 5) // cout<<l<<" "<<p<<"\n\n"; if(l == p) { //cout<<l<<"\n"; //for(i = 1; i <= n; i++) // cout<<kol[i]<<" "; //cout<<"\n"; ktora++; if(ktora == z) { cout<<"TAK\n"; for(i = 1; i <= n; i++) cout<<kol[i]<<" "; cout<<"\n"; return 0; } } } //cout<<mapa.size()<<"\n"; } |