bzoj1688

时间:2023-03-09 16:26:22
bzoj1688

题解:

暴力枚举生哪一些病

然后判断一下即可

代码:

#include<bits/stdc++.h>
using namespace std;
const int N=,D=;
int d,k,n,a[N][D],num;
int main()
{
scanf("%d%d%d",&n,&d,&k);
for (int i=;i<n;i++)
{
scanf("%d",&a[i][]);
for (int j=;j<=a[i][];j++)
scanf("%d",&a[i][j]),a[i][j]--;
}
for (int i=;i<<<d;i++)
{
int ans=;
for (int j=;j<d;j++)
if ((<<j)&i)ans++;
if (ans!=k)continue;
ans=;
for (int j=;j<n;j++)
{
int f=;
for (int k=;k<=a[j][];k++)
if (((<<a[j][k])&i)==)f=;
ans+=f;
}
num=max(num,ans);
}
printf("%d",num);
return ;
}