2016去哪儿编程题:5-血型遗传检测

2023-11-09

题目描述

血型遗传对照表如下:

父母血型 子女会出现的血型 子女不会出现的血型
O与O O A,B,AB
A与O A,O B,AB
A与A A,O B,AB
A与B A,B,AB,O ——
A与AB A,B,AB O
B与O B,O A,AB
B与B B,O A,AB
B与AB A,B,AB O
AB与O A,B O,AB
AB与AB A,B,AB O
请实现一个程序,输入父母血型,判断孩子可能的血型。

 

给定两个字符串fathermother,代表父母的血型,请返回一个字符串数组,代表孩子的可能血型(按照字典序排列)。

测试样例:
”A”,”A”
返回:[”A”,“O”]
解题
字典给你了,直接HashMap就可以了,注意,父母的血型互换后结果是一样的。
import java.util.*;

public class ChkBloodType {
    /**
    *请实现一个程序,输入父母血型,判断孩子可能的血型。
    * 都给了,判断取出可能血型
    */
    public String[] chkBlood(String father, String mother) {
        // write code here 
        HashMap<String,String[]> map = new HashMap<String,String[]>();
        map.put("OO", new String[] { "O" });
        map.put("AO", new String[] { "A", "O" });
        map.put("OA", new String[] { "A", "O" });
        map.put("AA", new String[] { "A", "O" });
        map.put("AB", new String[] { "A", "AB", "B", "O" });
        map.put("BA", new String[] { "A", "AB", "B", "O" });
        map.put("AAB", new String[] { "A", "AB", "B" });
        map.put("ABA", new String[] { "A", "AB", "B" });
        map.put("BO", new String[] { "B", "O" });
        map.put("OB", new String[] { "B", "O" });
        map.put("BB", new String[] { "B", "O" });
        map.put("BAB", new String[] { "A", "AB", "B" });
        map.put("ABB", new String[] { "A", "AB", "B" });
        map.put("ABO", new String[] { "A", "B" });
        map.put("OAB", new String[] { "A", "B" });
        map.put("ABAB", new String[] { "A", "AB", "B" });
            
        return map.get(father + mother );
        
    }
}

 

 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

2016去哪儿编程题:5-血型遗传检测 的相关文章

随机推荐

  • linux 技能包【4】:yum源

    文章目录 一 配置yum源 客户端 1 1 本地yum源 1 2 网络yum源 阿里云 二 查看yum源 三 指定 yum 源 软件安装版本 四 指定软件安装版本 五 制作本地 yum 库 服务端 六 制作网络 yum 库 服务端 一 配置
  • 查看日志的常用Linux命令(持续更新)

    1 查询符合条件的行 grep 关键字1 文件名 log grep 关键字2 grep 关键字3 grep 如果要显示行号 可加参数 n grep n 关键字 文件名 log 如果要看到符合条件的行 以及其相邻的n行可以使用如下命令 gre
  • Linux(Ubuntu18.04)和Windows10 之间的局域网文件传输

    有的时候当你需要同时使用windows和Ubuntu时 存在两者之间的文件传输或者通信问题 大多数采用移动硬盘 U盘间接传输的方式 或者干脆使用虚拟机拖拽到同类型系统内的工具传输 有没有简单一点的方法轻松地把Windows文件放到Ubunt
  • 爱心代码(web前端)陈飞宇李峋同款【容易操作】

    文章目录 前言 一 效果图 二 操作步骤 第一步 第二步 第三步 第四步 第五步 第六步 源码 前言 最近随着电视剧 点燃我温暖你 的火热播出 剧中帅气学霸李洵的炫酷爱心代码也迅速火出了圈 爱心素材也异常火爆 我在这里整理了一份大家有需自取
  • rsync脚本+linux,rsync随机启动脚本,rsync脚本

    1 bin sh 2 3 BEGIN INIT INFO4 Provides rsyncd5 Required Start remote fs syslog6 Required Stop remote fs syslog7 Should S
  • mac上完成卸载IntelliJ IDEA 2019.3编辑器

    一 finder gt 应用程序 gt 直接删除idea 二 执行以下命令 rm rf Users 自己的用户名 Library Logs IntelliJIdea2019 3 rm rf Users 自己的用户名 Library Pref
  • 解析 slim.arg_scope

    def resnet arg scope weight decay 0 0001 is training True batch norm decay 0 997 batch norm epsilon 1e 5 batch norm scal
  • C++ 引用规则

    引用及其注意事项 1 引用没有定义 是一种关系型声明 声明它和原有某一变量 实体 的关系 古而类型与源类型保持一会 且不分配内存 与被引用的变量有相同的地址 2 声明的时候必须初始化 一经声明 不可变更 3 可对引用 再次引用 多次引用的结
  • [Leetcode] 76. 最小覆盖子串

    给你一个字符串 s 一个字符串 t 返回 s 中涵盖 t 所有字符的最小子串 如果 s 中不存在涵盖 t 所有字符的子串 则返回空字符串 注意 对于 t 中重复字符 我们寻找的子字符串中该字符数量必须不少于 t 中该字符数量 如果 s 中存
  • 算法(公式法):判断是否完全平方数

    给定一个正整数 num 编写一个函数 如果 num 是一个完全平方数 则返回 True 否则返回 False 说明 不要使用任何内置的库函数 如 sqrt 示例 1 输入 16 输出 True 示例 2 输入 14 输出 False 利用公
  • Qt常用的快捷键

    alt enter 自动创建类定义的实现 F1 查看帮助 文档 F2 快速到变量声明 Shift F2 函数的声明和定义之间快速切换 F4 在 cpp 和 h 文件切换 Ctrl M 创建书签 Ctrl 切换书签 Alt M打开书签栏 Ct
  • SVN学习2020.8.9

    SVN账号密码一般是有一个配置管理员给配置的 文件夹绿色标志 代表和服务器文档是一致的 同步更新的 同步更新服务器信息 update 执行操作都先update 再做其他 先保证本地和服务器一致 先更新 上锁 再修改 再提交 解锁 如何把本地
  • 供应链金融与区块链01——论文阅读

    本文章仅用于记录本人学习过程 当作笔记来用 如有侵权请及时告知 谢谢 1 基于区块链技术的供应链金融体系优化研究 龙云安 但是由于 互联网 供应链 无法 及时跟进资金流和信息流 导致核心企业 供应链金 融平台和提供融资的商业银行无法及时掌控
  • 解决前端跨域的问题.Access to XMLHttpRequest at http://xxx.xxx from origin 'http://localhost:8000' has been bl

    1 前端浏览器报错如下 Access to XMLHttpRequest at http xxx xxx from origin http localhost 8000 has been blocked by CORS policy Res
  • Scratch 3.0源码 之 多语言实现

    文章目录 实现方式 初始版本 多语言版本 1 页面文件 2 配置文件 3 建立关联 语法说明 案例1 带HTML标签写法 建议写法 案例2 带超链接写法 建议写法 Scratch 3 0中各类显示文本默认是英文 如果不支持自己的语言 或者自
  • 红队隧道应用篇之Neo-reGeorg实现内网穿透(四)

    简介 reGeorg是一个能够实现内网穿透的工具 基于socks5协议 且能支持众多脚本 由于此工具使用率过高 导致容易被杀毒软件拦截 现有一个项目是由reGeorg修改而来 而且做了加密和免杀处理 这款工具的名字就叫Neo reGeorg
  • sqlServer 自定义函数-传入参数并返回动态表

    自定义函数 传入参数并返回动态表 create FUNCTION dbo v usrlist usr varchar 20 传入当前用户代码 返回动态表 表里面包含编码及名称两个字段 RETURNS tolist TABLE usrcode
  • 一般面试时会遇到的九大难题的对策解析

    终于接到面试通知书了 欣喜之余开始考虑即将面对的种种问题 所谓有备无患 您是否尝试过面试彩排 建议您现在就不妨试上一试 我想这会帮助你对其他问题的回答做准备 好啦面试开始 想象着考官已经坐在您的面前 问题1 为什么不谈谈你自己 分析 这是个
  • 渲染函数render

    文章目录 节点 树以及虚拟 DOM 树 节点 虚拟 DOM vue中render函数的作用 render函数去创建子组件内容 createElement官方文档 参考 节点 树以及虚拟 DOM 在深入渲染函数之前 了解一些浏览器的工作原理是
  • 2016去哪儿编程题:5-血型遗传检测

    题目描述 血型遗传对照表如下 父母血型 子女会出现的血型 子女不会出现的血型 O与O O A B AB A与O A O B AB A与A A O B AB A与B A B AB O A与AB A B AB O B与O B O A AB B与