8 条题解
-
0钟华栋 LV 8 @ 2024-4-15 20:52:21
#include <bits/stdc++.h> using namespace std; int xz[114524],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; } int main(){ // 1 1 1 1 1 1 6个原料都用 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++){ // 枚举 1- 11111 if(check(i)) cnt++; } cout<<cnt; }
-
02024-4-15 20:51:42@
using namespace std; int xz[10000],cnt=0,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; } 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; }
-
02024-4-15 20:51:16@
#include<bits/stdc++.h> using namespace std; int xz[10000],cnt=0,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; } 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;
}
-
02024-4-15 20:50:47@
#include<bits/stdc++.h> 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; } 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; }
-
02024-4-15 20:49:46@
#include<bits/stdc++.h> using namespace std; int xz[10000],cnt=0,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; } 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;
}
-
02024-4-15 20:49:44@
#include<bits/stdc++.h> 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; } 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; }
-
02024-4-15 20:49:26@
#include<bits/stdc++.h> using namespace std; int xz[10000],cnt=0,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; } 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;
}
-
02024-4-15 20:49:23@
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; }
- 1
信息
- ID
- 2549
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- 递交数
- 193
- 已通过
- 65
- 上传者