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

蓝桥杯每日一题2023.10.8

题目描述

七段码 - 蓝桥云课 (lanqiao.cn)

题目分析 

所有的情况我们可以分析出来一共有2的7次方-1种,因为每一个二极管都有选择和不选择两种情况,有7个二极管,但是还有一种都不选的情况需要排除,故-1

枚举每个方案看是否符合要求,对于每种方案,从任何一个选中的顶点出发进行dfs,如果这个方案找到的顶点是亮的并且有边相连那么这个方案就符合要求

 是否有边相连我们使用邻接矩阵存储,如第一行,与a相连的边有b, f所以g[a][b] = 1, g[a][f] = 1

答案:80

#include<bits/stdc++.h>
using namespace std;
int bright[7];
bool vis[7];
int g[7][7] = 
{{0, 1, 0, 0, 0, 1, 0},{1, 0, 1, 0, 0, 0, 1},{0, 1, 0, 1, 0, 0, 1},{0, 0, 1, 0, 1, 0, 0},{0, 0, 0, 1, 0, 1, 1},{1, 0, 0, 0, 1, 0, 1},{0, 1, 1, 0, 1, 1, 0}
};
void dfs(int x)
{for(int i = 0; i < 7; i ++){if(g[x][i] && bright[i] && !vis[i]){vis[i] = 1;dfs(i);}}
}
int main()
{int ans = 127;//128 - 1for(int i = 1; i <= 127; i ++){memset(vis, 0, sizeof vis);memset(bright, 0, sizeof bright);int x = i;int j = 0;while(x){if(x & 1)bright[j] = 1;x >>= 1;j ++;}int stick = 0;while(!bright[stick])stick ++;vis[stick] = 1;dfs(stick);for(int j = 0; j < 7; j ++){if(bright[j] && !vis[j])//此处应该为亮但是却没有访问过说明不相连 {ans --;break;}}}cout << ans; return 0;
}
http://www.lryc.cn/news/186034.html

相关文章:

  • jmeter,性能测试,Locust
  • opencv图像的直方图,二维直方图,直方图均衡化
  • c++中的map和set
  • Swagger使用详解
  • ToBeWritten之车联网安全中常见的TOP 10漏洞
  • 软考-密码学概述
  • windows 2003、2008远程直接关闭远程后设置自动注销会话
  • iOS BUG UIView转UIImage模糊失真
  • 如何在10分钟内让Android应用大小减少 60%?
  • 网络代理技术:保障隐私与增强安全
  • 数据结构 | (二) List
  • [NewStarCTF 2023 公开赛道] week1 Crypto
  • C语言中文网 - Shell脚本 - 0
  • Transformer预测 | Pytorch实现基于Transformer 的锂电池寿命预测(CALCE数据集)
  • 2023年【通信安全员ABC证】找解析及通信安全员ABC证考试总结
  • 前端框架Vue2.0+Vue3.0学习笔记01
  • iOS App上架全流程及相关处理
  • 解决WordPress升级后提示:无需升级,您的WordPress数据库已经是最新的了
  • springcloud之项目实战搭建单体
  • Mac 点击桌面 出现黑边框 解决
  • 深度学习(2)---循环神经网络(RNN)
  • [NOIP2010 提高组] 机器翻译
  • 配置文件生成器-秒杀SSM的xml整合
  • 小黑开始了拉歌训练,第一次进入部室馆,被通知要去当主持人心里有些紧张的leetcode之旅:337. 打家劫舍 III
  • flutter开发实战-inappwebview实现flutter与Javascript方法调用
  • alsa pcm设备之硬件参数
  • websocket拦截
  • 深度强化学习之 PPO 算法
  • iPhone升级iOS17出现无法连接互联网的错误提示怎么办?
  • Spring:处理@Autowired和@Value注解的BeanPostProcessor