#include <bits/stdc++.h> using namespace std; #define st first #define nd second typedef long long ll; typedef long double ld; typedef __int128 int128; typedef vector<int> vi; typedef pair<int,int> pi; typedef pair<double,double> pd; typedef pair<ll,ll> pl; vector<pi> v; set<vector<bool>> ans; int main(){ ios::sync_with_stdio(0); cin.tie(0); int n,m; cin >> n >> m; for(int i = 1; i <= m; i++){ int a,b; cin >> a >> b; v.push_back({b,a}); } reverse(v.begin(),v.end()); for(int d = 1; d <= n; d++){ for(int i = 1; i <= n-d+1; i++){ vector<bool> akt; akt.push_back(0); //ind 0 for(int j = 1; j <= n; j++){ if(j >= i && j <= i+d-1) akt.push_back(1); else akt.push_back(0); } for(auto x:v) if(akt[x.st] && !akt[x.nd]) swap(akt[x.st],akt[x.nd]); ans.insert(akt); } cout << ans.size()%2 << ' '; ans.clear(); } return 0; } //g++ -O3 -static -Wall .cpp -std=c++17
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 | #include <bits/stdc++.h> using namespace std; #define st first #define nd second typedef long long ll; typedef long double ld; typedef __int128 int128; typedef vector<int> vi; typedef pair<int,int> pi; typedef pair<double,double> pd; typedef pair<ll,ll> pl; vector<pi> v; set<vector<bool>> ans; int main(){ ios::sync_with_stdio(0); cin.tie(0); int n,m; cin >> n >> m; for(int i = 1; i <= m; i++){ int a,b; cin >> a >> b; v.push_back({b,a}); } reverse(v.begin(),v.end()); for(int d = 1; d <= n; d++){ for(int i = 1; i <= n-d+1; i++){ vector<bool> akt; akt.push_back(0); //ind 0 for(int j = 1; j <= n; j++){ if(j >= i && j <= i+d-1) akt.push_back(1); else akt.push_back(0); } for(auto x:v) if(akt[x.st] && !akt[x.nd]) swap(akt[x.st],akt[x.nd]); ans.insert(akt); } cout << ans.size()%2 << ' '; ans.clear(); } return 0; } //g++ -O3 -static -Wall .cpp -std=c++17 |