제출 #486030

#제출 시각아이디문제언어결과실행 시간메모리
486030sam571128Norela (info1cup18_norela)C++17
50 / 100
940 ms304 KiB
#include <bits/stdc++.h> #define int long long #define fastio ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); using namespace std; signed main(){ fastio int n,m; cin >> n >> m; vector<int> v(m); for(int i = 0;i < m;i++){ int q; cin >> q; int tmp = 0; for(int j = 0;j < q;j++){ int x; cin >> x; x--; tmp ^= (1LL<<x); } v[i] = tmp; } vector<int> ans; for(int i = 0;i <= m;i++){ ans.push_back(m+1); } for(int i = 0;i < (1<<m);i++){ vector<int> tmp; int now = (1LL<<n)-1; for(int j = 0;j < m;j++){ if(i&(1LL<<j)){ now ^= v[j]; tmp.push_back(j); } } if(now==0){ int sz = min(ans.size(),tmp.size()); if(ans.size() > tmp.size()) ans = tmp; else if(ans.size()==tmp.size()){ for(int j = 0;j < sz;j++){ if(ans[j]>tmp[j]){ ans = tmp; break; }else if(ans[j]<tmp[j]){ break; } } } } } cout << ans.size() << "\n"; for(auto x : ans) cout << x+1 << " "; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...