8 条题解
- 
  0
using namespace std; int xz[10000],cnt=0; int t,n,z,x; int check(int x){ for(int i=1;i<=n;i++){ if((xz[i]&x)==xz[i]){ return 0; } } return 1; } void quicksort(int a[],int left,int right){ if(left>=right){ return ; } int t=a[left]; int i=left,j=right; while(i<j){ while(i<j&&a[j]>=t) j--; while(i<j&&a[i]<=t) i++; if(i<j){ swap(a[i],a[j]); } } swap(a[i],a[left]); quicksort(a,left,i-1); quicksort(a,i+1,right); } int main(){ cin>>t>>n; for(int i=1;i<=n;i++){ cin>>z; for(int j=1;j<=z;j++){ cin>>x; xz[i]=xz[i] | 1<<(x-1); } } for(int i=0;i<(1<<t);i++){ if(check(i)){ cnt++; } } cout<<cnt; return 0; } 
信息
- ID
 - 2549
 - 时间
 - 1000ms
 - 内存
 - 256MiB
 - 难度
 - 5
 - 标签
 - 递交数
 - 224
 - 已通过
 - 79
 - 上传者