#include <iostream>
#include <vector>
using namespace std;
typedef long long ll;
const int P=100;
ll s[P];
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int n,m;
cin>>n>>m;
for(int i=0;i<m;i++)
{
int sz;
cin>>sz;
for(int j=0;j<sz;j++)
{
int x;
cin>>x;
x--;
s[i]|=(1ll<<x);
}
}
int cn=m+2,ap=0;
for(int mk=0;mk<(1<<m);mk++)
{
ll fnl=0;
int cnt=0;
for(int i=0;i<m;i++)
{
if((mk>>i)&1)
{
cnt++;
fnl^=s[i];
}
}
if(fnl==((1ll<<n)-1))
{
if(cnt<cn)
{
cn=cnt;
ap=mk;
}
else if (cnt==cn and mk<ap){
ap=mk;
}
}
}
cout<<cn<<endl;
for(int i=0;i<m;i++)
{
if((ap>>i)&1)
{
cout<<i+1<<' ';
}
}
cout<<endl;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |