Submission #1319003

#TimeUsernameProblemLanguageResultExecution timeMemory
1319003muhammad-ahmadNorela (info1cup18_norela)C++20
0 / 100
0 ms332 KiB
// #include <bits/stdc++.h> #include <iostream> #include <cmath> #include <algorithm> #include <map> #include <vector> #include <iomanip> #include <string> #include <queue> #include <set> #include <deque> #include <numeric> #include <stack> #include <chrono> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> using namespace std; using namespace __gnu_pbds; void fast_io() { // freopen("", "r", stdin); // freopen("", "w", stdout); ios::sync_with_stdio(0); cin.tie(); cout.tie(); cout << setprecision(9); } #define int long long #define endl '\n' #define all(v) (v).begin(), (v).end() #define rall(v) (v).rbegin(), (v).rend() #define fi first #define se second #define ordered_set tree<int, null_type,less<int>, rb_tree_tag,tree_order_statistics_node_update> void solve() { int n, m; cin >> n >> m; int a[m] = {}; for (int i = 0; i < m; i++){ int s; cin >> s; while (s--){ int x; cin >> x; x--; a[i] += (1ll << x); } } vector<int> ans; for (int i = 0; i <= m; i++) ans.push_back(m); for (int i = 0; i < (1ll << m); i++){ int cur = 0; vector<int> T; for (int j = 0; j < m; j++){ if (((i >> j) & 1)){ T.push_back(j); cur ^= a[j]; } } if (cur == ((1ll << n) - 1)){ swap(T, ans); break; } } cout << ans.size() << endl; for (auto i : ans) cout << i + 1 << ' '; cout << endl; // for (auto i : a) cout << i << ' '; // cout << endl; } signed main() { fast_io(); srand(chrono::steady_clock::now().time_since_epoch().count()); int tc = 1; // cin >> tc; while (tc--) solve(); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...