当前位置: 首页 > news >正文

七段码 路径压缩 并查集 dfs

12.七段码 - 蓝桥云课

将七个二极管映射为 1-7 

开一个二维矩阵 为 相邻的边连上线 

edge[1][2] = edge[1][6] = 1;edge[2][1] = edge[2][3] = edge[2][7] = 1;edge[3][2] = edge[3][4] = edge[3][7] = 1;edge[4][3] = edge[4][5] = 1;edge[5][4] = edge[5][6] = edge[5][7] = 1;edge[6][1] = edge[6][5] = edge[6][7] = 1;edge[7][2] = edge[7][3] = edge[7][5] = edge[7][6] = 1;

由于数据量比较小 一共也就    2^7 = 128种状态 直接搜索枚举每个二极管亮还是灭 

将连在一起的边视为连通块 递归到最后一层 判断的时候 查看 亮着的联通块是否大于1 如果等于1则方案数+1 

#include<bits/stdc++.h>
#include<iostream>
using namespace std;
int edge[10][10];
int p[10];
bool st[10];
int ans = 0;
int find(int x){if(p[x] != x){p[x] = find(p[x]);//路径压缩 }return p[x];//找到根节点了 直接返回  
}
void dfs(int u){if(u==8){for(int i = 1 ;i<=7;i++){p[i] = i ; // 初始化 自己指向自己作为根节点 }for(int i = 1 ;i <8;i++){for(int j = 1 ; j<8;j++){if(edge[i][j] && st[i]&&st[j] ){///如果两者相邻并且都亮着 合并为一个联通块  p[find(i)] = find(j);//指向同一个根节点 }}}	int cnt = 0 ;for(int i = 1;i<8;i++){if(st[i]&&(p[i] == i)){cnt++;}}if(cnt==1){ans++;}return ;}st[u] = 1;//第u个二极管亮 dfs(u+1);// 递归下个管 st[u] = 0;回溯   第u个二极管灭 dfs(u+1);}
int main(){edge[1][2] = edge[1][6] = 1;edge[2][1] = edge[2][3] = edge[2][7] = 1;edge[3][2] = edge[3][4] = edge[3][7] = 1;edge[4][3] = edge[4][5] = 1;edge[5][4] = edge[5][6] = edge[5][7] = 1;edge[6][1] = edge[6][5] = edge[6][7] = 1;edge[7][2] = edge[7][3] = edge[7][5] = edge[7][6] = 1;dfs(1);cout<<ans;return 0;
}

相关文章:

  • Datawhale AI春训营 TASK2 学习笔记
  • 用P0口控制LED(STC89C52单片机)
  • QEMU源码全解析 —— 块设备虚拟化(20)
  • 硬件电路(25)-过温保护器件ksd9700温控开关
  • 图例QCPLegend
  • 深入理解基线检查:网络安全的基石
  • 基于 JavaWeb 的 SpringBoot 办公 ERP 管理系统设计与实现(源码+文档+部署讲解)
  • 从浏览器地址栏输入 URL 到网页显示,这中间发生了什么?
  • [matlab]子图排版和线性回归
  • MySQL8启动失败 NET HELPMSG 3534
  • 016-C语言内存函数
  • 【HarmonyOS 5】VisionKit人脸活体检测详解
  • 【特殊场景应对3】创意岗简历骚操作:作品集链接的正确打开方式
  • 【Vue】组件通信(Props/Emit、EventBus、Provide/Inject)
  • keil5烧录后No Debug
  • (三)mac中Grafana监控Linux上的Redis(Redis_exporter安装使用)
  • 在win上安装Ubuntu安装Anaconda(linx环境)
  • 6.数据手册解读—运算放大器(三)
  • LeetCode hot 100—分割等和子集
  • 在 Node.js 中设置响应的 MIME 类型
  • 美法官裁定特朗普援引战时法律驱逐黑帮违法,系首次永久性驳回
  • 神舟十九号航天员乘组平安抵京
  • 韩国检方结束对尹锡悦私宅的扣押搜查
  • 北方旱情持续,水利部:大中型灌区春灌总体有保障
  • 中央网信办:重点整治违规AI产品、利用AI制作发布谣言等突出问题
  • 招商蛇口:一季度营收约204亿元,净利润约4.45亿元