#include <iostream>
#include <cstdio>
using namespace std;
int n, uu, m;
bool a[4500005], vis[4500005][2];
void dfs(int x, int y){
if(vis[x][y]) return ;
vis[x][y] = true;
if(y==1) dfs(x, 2);
else{
for(int i=0; i<n; i++)
if(!(x&(1<<i)))
dfs(x|(1<<i), 2);
if(a[(1<<n)-1-x]) dfs((1<<n)-1-x, 1);
}
}
int main(){
cin>>n>>m;
for(int i=1; i<=m; i++){
scanf("%d", &uu);
a[uu] = true;
}
int ans=0;
for(int i=0; i<(1<<n); i++)
if(a[i] && !vis[i][1]){
dfs(i, 1);
ans++;
}
cout<<ans<<endl;
return 0;
}

最新文章

  1. Salesforce Apex 开发环境设置和Hello World示例
  2. 同感,C#对JSON序列化和反序列化有点蹩脚
  3. 后半部分样式和JS前半部分脚本语言
  4. 配置Nginx服务
  5. Foreman--管理PuppetClient
  6. Less 教程
  7. python打包成window可执行程序
  8. jQuery ajax error函数(交互错误信息的获取)
  9. String类型
  10. C语言第八次博客作业--字符数组
  11. sql server 高可用日志传送
  12. django的url反向解析
  13. CentOS查看和修改PATH环境变量的方法 profile
  14. Git科普来一发:【rebase】与【merge】
  15. 【转】PHP中file_put_contents追加和换行
  16. numpy和Matplotlib篇---2
  17. curl 请求https内容,返回空
  18. pyDay9
  19. Linux 用C语言判断文件和文件夹
  20. Andrew Ng机器学习总结(自用)

热门文章

  1. 解决Could not get lock /var/cache/apt/archives/lock
  2. W5100与MCU的连接方式
  3. UOJ 35 后缀数组
  4. 八、IntelliJ IDEA 缓存和索引的介绍及清理方法
  5. vim 操作手册
  6. File,FileInfo,Directory,DirectoryInfo
  7. LeetCode1.两数之和 JavaScript
  8. 使用补丁破解IntelliJ IDEA 2017收费版本(转)
  9. CentOS 7安装Oracle (CentOS Linux release 7.5.1804)
  10. Rman 管理 archivelog 的命令