霓虹【算法赛】蓝桥杯第7场强者挑战赛

问题描述

晚上,小蓝正无聊的走在大路上,小蓝所在的街区是一个带有赛博朋克风格的街区。

他抬头一看,看到了很多霓虹灯牌。在其中的某一个店铺前,挂着一排的数字灯牌,每一个数字的显示都依靠 7 段 LED 管,亮着的灯管组成数字,具体来说如下图所示:

小蓝刚学过数字电路,他知道具体的工作原理如下:

在思考的过程中,他发现数字发生了变化。他想要知道,在数字变化的过程中,总共有多少根灯管的状态产生了变化?

例如,从显示数字 0 到显示数字 6,会有一个灯管熄灭,一个灯管点亮,那么总共有两根灯管发生了变化。

具体来说,当前的数字串是 A,一秒钟之后,数字串变成了 B,小蓝想知道,在数字跳转的过程中,有多少个灯管的状态发生了变化。

输入格式

输入共两行,包含两个等长字符串。

输出格式

一个整数,代表跳变过程中变化的灯管数量。

样例输入

cpp 复制代码
01
56

样例输出

cpp 复制代码
9

说明

跳变过程如题干中的图片。

0→5 变化了 3 根灯管,1→6 变化了 6 根灯管,共变化 9 根灯管。

运行限制

语言 最大运行时间 最大运行内存

C++ 1s 256M

C 1s 256M

Java 2s 256M

Python3 3s 256M

PyPy3 3s 256M

Go 3s 256M

JavaScript 3s 256M

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int main(){
	ios::sync_with_stdio(0);cin.tie(nullptr);cout.tie(nullptr);
	int led_change[10][10]={
	{0,4,3,3,4,3,2,3,1,2},//0-x
	{4,0,5,3,2,5,6,1,5,4},//1-x
	{3,5,0,2,5,4,3,4,2,3},//2-x
	{3,3,2,0,3,2,3,2,2,1},//3-x
	{4,2,5,3,0,3,4,3,3,2},//4-x
	{3,5,4,2,3,0,1,4,2,1},//5-x
	{2,6,3,3,4,1,0,5,1,2},//6-x
	{3,1,4,2,3,4,5,0,4,3},//7-x
	{1,5,2,2,3,2,1,4,0,1},//8-x
	{2,4,3,1,2,1,2,3,1,0},//9-x
	};
//	int led_vanish[10]={6,2,5,5,4,5,6,3,7,6};
	string a,b;cin>>a>>b;
	if(a.size()>b.size())swap(a,b);
	int loop=a.size();
	int ans=0;
	for(int i=loop-1;i>=0;--i){
		ans+=led_change[a[i]-'0'][b[i]-'0'];
	}
	cout<<ans;
	return 0;
}
相关推荐
大鱼>几秒前
AI+快递分拣:视觉识别+自动分拣+异常检测
人工智能·深度学习·算法·机器学习
想要成为糕糕手2 分钟前
238. 除了自身以外数组的乘积 — 面试向深度解析
javascript·算法·面试
AIHR数智引擎6 分钟前
15%对撞40%:WEF白皮书里的AI组织隐忧
数据库·人工智能·经验分享·职场和发展·aihr
浩瀚地学14 分钟前
【面试算法笔记】0105-数组-螺旋矩阵
java·开发语言·笔记·算法·面试
Hesionberger1 小时前
动态规划与二分法破解最长递增子序列
java·数据结构·python·算法·leetcode
imuliuliang1 小时前
关于Kruskal 算法在图优化问题中的扩展应用7
算法
老约家的可汗1 小时前
Linux中基础IO
linux·服务器·算法
满怀冰雪2 小时前
第29篇-状态压缩DP-当状态很多时如何降维优化
java·算法·动态规划
令狐掌门2 小时前
2026华为OD面试题020:日志文件异常检测
算法·leetcode·华为od
炸薯条!2 小时前
从零开始学C++(4) --类和对象
开发语言·c++·算法