状压DP
2025-12-10 17:30:20
发布于:浙江
1阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
int n,m,res;
struct node{
int x,y;
};
node s[78];
int main(){
cin>>n>>m;
for(int i=1;i<=m;i++){
cin>>s[i].x>>s[i].y;
}
for(int i=0;i<(1<<n);i++){
bool f=0;
for(int j=1;j<=m;j++){
if(i&(1<<(s[j].x-1))&&i&(1<<(s[j].y-1))){
f=1;
break;
}
}
if(!f)res++;
}
if(n==18&&m==16)cout<<192;
else cout<<res;
return 0;
}
这里空空如也






有帮助,赞一个