zoukankan      html  css  js  c++  java
  • LeetCode: Bulls and Cows

    论文暂告一段落,闲着无聊到 LeetCode 刷刷题,蛤蛤蛤。

    题目链接:Bulls and Cows

    题目大意如下:

    先给出一个数字串secret,再给出一个长度一样的猜测数字串guess。

    对guess某个位置上的数字,若在secret串中的相同位置上存在相同的数字,则输出 1A,若有两个这种情况,则输出 2A;

    当猜测数字串中除去完全匹配上位置的数字外,还有只猜中数字的情况,则猜中一个记为 1B,猜中两个记为 2B,secret中的数字不能被计数超过一次。

    example 1 :
    Secret number: “1807”
    Friend’s guess: “7810”
    Output: 1A3B

    example 2 :
    Secret number: “1123”
    Friend’s guess: “0111”
    Output: 1A1B



    代码如下:

    public static String getHint6(String secret, String guess) {
            char[] secrets = secret.toCharArray();
            char[] guesses = guess.toCharArray();
    
            int numA = 0, numB = 0;
            int length = guesses.length;
    
            for (int i = 0; i < length; i++) {
                if (secrets[i] == guesses[i]) {
                    numA++;
                }
            }
    
            int[] countS = new int[10];
            int[] countG = new int[10];
            for (int i = 0; i < length; i++) {
                countS[secrets[i] - '0']++;
                countG[guesses[i] - '0']++;
            }
            for (int i = 0; i < countS.length; i++) {
                numB += countS[i] > countG[i] ? countG[i] : countS[i];
            }
    
            return numA + "A" + (numB - numA) + "B";
        }

    运行效果:
    提交后的运行效果



    作业部落链接:https://www.zybuluo.com/NewWorld/note/339463

  • 相关阅读:
    批量创建账号脚本
    shell 批量创建_备份 mysql 数据库 表
    优化chkconfig
    cut 命令
    Shell for 循环
    while 读取文件内容
    生成随机数
    linux 资源管理
    shell 脚本后台运行知识
    while 语句
  • 原文地址:https://www.cnblogs.com/read-the-spring-and-autumn-annals-in-night/p/12041941.html
Copyright © 2011-2022 走看看