Java实现 蓝桥杯VIP 算法提高 计算器
2024-10-09 06:38:49
算法提高 计算器
时间限制:1.0s 内存限制:256.0MB
【问题描述】
王小二的计算器上面的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
import java.util.Scanner;
public class 计算器 {
public static void main(String[] args) {
Scanner out=new Scanner(System.in);
int L=out.nextInt();
String a=out.next();
String b=out.next();
int[][] arr={
{1,1,1,1,1,1,0},
{0,1,1,0,0,0,0},
{1,1,0,1,1,0,1},
{1,1,1,1,0,0,1},
{0,1,1,0,0,1,1},
{1,0,1,1,0,1,1},
{1,0,1,1,1,1,1},
{1,1,1,0,0,0,0},
{1,1,1,1,1,1,1},
{1,1,1,1,0,1,1}
};
char[] c1=a.toCharArray();
char[] c2=b.toCharArray();
int count=0;
for (int i = 0; i < L; i++) {
for (int j = 0; j < 7; j++) {
if(arr[c1[i]-'0'][j]!=arr[c2[i]-'0'][j]) count++;
}
}
System.out.println(count);
}
}
最新文章
- 精美素材:40个漂亮的 PSD 贴纸模板《上篇》
- jquery 模块拖拽
- Jmeter性能测试 及压测入门
- Servlet的学习之ServletContext(2)
- 分布式搜索elasticsearch 文献检索索引 入门
- robot framework环境搭建(转)
- selenium+Eclipse+testNG读取XML内容登陆系统
- log4j配置示例
- win10 uwp 俄罗斯方块
- C#中@的作用
- 关于Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/springmvc-demo-01-start]]出错的解决方法
- 數據監控与診斷--環形緩沖區(RING BUFFER)
- oracle 判断字段内是否含中文
- phpize是什么
- iOSAPP开发项目搭建
- c++ int转string类型
- 峰Spring4学习(4)spring自动装配
- VC小笔记
- QueryRunner cannot be resolved to a type:关于包不能正常导入的问题
- Linux 系统 /proc/[pid]/stat 文件解释
热门文章
- elasticsearch kibana + 分词器安装详细步骤
- java基础知识积累总结
- 黑马程序员_毕向东_Java基础视频教程——算术运算符小点(随笔)
- robotframework利用selenium2Library实现无界面自动化关键字
- React:Composition
- P2756 飞行员配对方案问题 网络流
- Django之请求生命周期
- 12.1面向对象编程的介绍(oop):封装,继承,多态,访问私有属性
- Hyperledger Fabric——balance transfer(五)执行交易
- Cube-UI组件中create-api 模块的基本使用