算法提高 计算器
来源:互联网 发布:瞬联软件科技 编辑:程序博客网 时间:2024/05/17 03:27
【问题描述】
王小二的计算器上面的LED显示屏坏掉了,于是他找到了在计算器维修与应用系学习的你来为他修计算器。
屏幕上可以显示0~9的数字,其中每个数字由7个小二极管组成,各个数字对应的表示方式如图所示:
。
为了排除电路故障,现在你需要计算,将数字A变为数字B需要经过多少次变换?
注意:现在将其中每段小二极管的开和关都定义为一次变换。例如数字1变为2是5次操作。
【输入格式】
第一行为一个正整数L,表示数码的长度。
接下来两行是两个长度为L的数字A和B,表示要把数字A变成数字B(数字可以以0开头)。
【输出格式】
一行一个整数,表示这些小二极管一共要变换多少次。
【样例输入1】
3
101
025
【样例输出1】
12
【样例输入2】
8
19920513
20111211
【样例输出2】
27
【数据范围】
王小二的计算器上面的LED显示屏坏掉了,于是他找到了在计算器维修与应用系学习的你来为他修计算器。
屏幕上可以显示0~9的数字,其中每个数字由7个小二极管组成,各个数字对应的表示方式如图所示:
。
为了排除电路故障,现在你需要计算,将数字A变为数字B需要经过多少次变换?
注意:现在将其中每段小二极管的开和关都定义为一次变换。例如数字1变为2是5次操作。
【输入格式】
第一行为一个正整数L,表示数码的长度。
接下来两行是两个长度为L的数字A和B,表示要把数字A变成数字B(数字可以以0开头)。
【输出格式】
一行一个整数,表示这些小二极管一共要变换多少次。
【样例输入1】
3
101
025
【样例输出1】
12
【样例输入2】
8
19920513
20111211
【样例输出2】
27
【数据范围】
L<=100
#include<stdio.h>#include<string.h>int n;int temp[10][7]={{1,1,1,0,1,1,1},{0,0,1,0,0,0,1},{0,1,1,1,1,1,0},{0,1,1,1,0,1,1},{1,0,1,1,0,0,1},{1,1,0,1,0,1,1},{1,1,0,1,1,1,1},{0,1,1,0,0,0,1},{1,1,1,1,1,1,1},{1,1,1,1,0,1,1}};int count[105];void change(char str1[],char str2[]){int i,j;memset(count,0,sizeof(count));for(i=0;i<n;i++){if(str1[i]!=str2[i]){for(j=0;j<7;j++){if(temp[str1[i]-'0'][j]!=temp[str2[i]-'0'][j]){count[i]++;}}}}}int main(){int sum=0,i;char str1[105],str2[105];scanf("%d",&n);scanf("%s%s",str1,str2);change(str1,str2);for(i=0;i<n;i++){sum+=count[i];}printf("%d\n",sum);return 0;}
1 0
- 算法提高 简单计算器
- 算法提高 计算器
- 算法提高 计算器
- 算法提高 ADV-146 计算器
- 蓝桥杯 ADV-146算法提高 计算器
- 蓝桥杯 ADV-75 算法提高 简单计算器
- 算法提高 ADV-75 简单计算器
- 计算器算法
- 算法提高
- 基本功能计算器算法(优先级)
- 求计算器的算法
- 基于计算器算法二
- JAVA计算器算法实现
- 简单计算器算法 转
- Java中的计算器算法
- 计算器核心算法(一)
- 计算器核心算法(二)
- 简单的计算器算法
- Class对象
- HDUoj 5363 Key Set (快速幂,数学,规律
- 剑指offer——数值的整数次方
- Webkit模块介绍
- JSONObject To JavaBean
- 算法提高 计算器
- java虚拟机--垃圾收集算法与垃圾收集器
- 送快递
- c++ 构造函数 继承
- mysql插入数据显示乱码问题
- 第四章
- 51Nod 1532 DP + bitset 优化
- Unity3d碰撞器与触发器的区别详解(rigidbody移动和charactercontroller移动区别)
- 字母打印机