zoukankan      html  css  js  c++  java
  • Java实现 蓝桥杯VIP 算法提高 计算器

    算法提高 计算器
    时间限制: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);
    	}
    
    }
    
    
  • 相关阅读:
    you-get 下载网络上的富媒体信息
    响应式布局
    网页头部的声明应该是用 lang="";
    htm、html、shtml网页区别
    请求头出现Provisional headers are shown
    配置nginx直接使用webpack生成的gz压缩文件,而不用nginx自己压缩
    babel-plugin-equire
    VUE中$refs的基本用法
    element-ui--按需引入
    vue ts ,vue使用typescript,三种组件传值方式
  • 原文地址:https://www.cnblogs.com/a1439775520/p/13078348.html
Copyright © 2011-2022 走看看