当前位置: 首页 > news >正文

成都网站排名提升免费信息发布平台网站

成都网站排名提升,免费信息发布平台网站,兰州网站备案谁家做,找熟人做网站的弊端目录 专栏导读一、题目描述二、输入描述三、输出描述四、解题思路五、Java算法源码六、效果展示1、输入2、输出3、说明 华为OD机试 2023B卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试(JAVA)真题(A卷B卷&#…

在这里插入图片描述

目录

    • 专栏导读
    • 一、题目描述
    • 二、输入描述
    • 三、输出描述
    • 四、解题思路
    • 五、Java算法源码
    • 六、效果展示
      • 1、输入
      • 2、输出
      • 3、说明

华为OD机试 2023B卷题库疯狂收录中,刷题点这里

专栏导读

本专栏收录于《华为OD机试(JAVA)真题(A卷+B卷)》。

刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天CSDN在线答疑。

一、题目描述

每个数字关联多个字母,关联关系如下:

  • 0 关联 “a”,”b”,”c”
  • 1 关联 “d”,”e”,”f”
  • 2 关联 “g”,”h”,”i”
  • 3 关联 “j”,”k”,”l”
  • 4 关联 “m”,”n”,”o”
  • 5 关联 “p”,”q”,”r”
  • 6 关联 “s”,”t”
  • 7 关联 “u”,”v”
  • 8 关联 “w”,”x”
  • 9 关联 “y”,”z”
  1. 输入一串数字后,通过数字和字母的对应关系可以得到多个字母字符串(要求按照数字的顺序组合字母字符串);
  2. 屏蔽字符串:屏蔽字符串中的所有字母不能同时在输出的字符串出现,如屏蔽字符串是abc,则要求字符串中不能同时出现a,b,c,但是允许同时出现a,b或a,c或b,c等;
  3. 给定一个数字字符串和一个屏蔽字符串,输出所有可能的字符组合;
  4. 例如输入数字字符串78和屏蔽字符串ux,输出结果为uw。

二、输入描述

第一行输入为一串数字字符串,数字字符串中的数字不允许重复,数字字符串的长度大于0,小于等于5;
第二行输入是屏蔽字符串,屏蔽字符串的长度一定小于数字字符串的长度,屏蔽字符串中字符不会重复;

三、输出描述

输出可能的字符串组合

注:字符串之间使用逗号隔开,最后一个字符串后携带逗号

四、解题思路

  1. 定义数组arr,存储每个数字关联多个字母;
  2. 第一行输入为一串数字字符串;
  3. 第二行输入是屏蔽字符串;
  4. 定义集合list,加载第一行字母关联的数字;
  5. 并将集合list加载到map中;
  6. 使用深度优先搜索dfs算法,遍历map;
  7. 输出所有可能的输出可能的字符串组合。

五、Java算法源码

package com.guor.od;import java.util.*;public class OdTest {static Map<Integer, List<Character>> map = new HashMap<Integer, List<Character>>();static String[] numArr = null;static List<String> okList = new ArrayList<>();public static void main(String[] args) {// 每个数字关联多个字母,关联关系如下String[] arr = {"abc", "def", "ghi", "jkl", "mno", "pqr", "st", "uv", "wx", "yz"};Scanner sc = new Scanner(System.in);String input1 = sc.nextLine();String input2 = sc.nextLine();List<Integer> numberList = new ArrayList<>();for (int i = 0; i < input1.length(); i++) {numberList.add(Integer.parseInt(input1.charAt(i) + ""));}int count = 0;for (int i = 0; i < arr.length; i++) {if (numberList.contains(i)) {// 第一行字母关联的数字List<Character> list = new ArrayList<Character>();for (int j = 0; j < arr[i].length(); j++) {list.add(arr[i].charAt(j));}map.put(count++, list);}}numArr = new String[map.size()];dfs(0);for (String s : okList) {if (s.indexOf(input2) == -1) {System.out.print(s + ",");}}}static StringBuilder builder = new StringBuilder();public static void dfs(int num) {if (num == map.size()) {for (int i = 0; i < numArr.length; i++) {builder.append(numArr[i]);}okList.add(builder.toString());builder.setLength(0);return;}for (int i = 0; i < map.get(num).size(); i++) {numArr[num] = map.get(num).get(i) + "";dfs(num + 1);}}
}

六、效果展示

1、输入

89
wy

2、输出

wz,xy,xz,

3、说明

89对应"wx", “yz”。

屏蔽wy。

“wx”, "yz"四种有效组合,屏蔽wy,变为wz,xy,xz,

在这里插入图片描述


🏆下一篇:华为OD机试真题 Java 实现【简易内存池】【2023 B卷 200分 考生抽中题】

🏆本文收录于,华为OD机试(JAVA)真题(A卷+B卷)

刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天CSDN在线答疑。

在这里插入图片描述

http://www.hkea.cn/news/834426/

相关文章:

  • 做学校网站什么文案容易上热门
  • 网站开发技术包括郑州网站关键词排名
  • 网站开发预算怎么算百度竞价ocpc
  • 成都锐度设计公司怎么样优化大师怎么提交作业
  • 租用网站服务器东莞市网站建设
  • 馆陶县网站网站运营管理
  • 西双版纳傣族自治州医院seo搜索优化网站推广排名
  • wordpress站点网址小吃培训2000元学6项
  • 郑州网站制作天强科技seo百度发包工具
  • 江阴市住房与建设局网站seo工资多少
  • wordpress image.php南宁百度首页优化
  • 谢家华做网站百度指数与百度搜索量
  • wordpress 安装 ubuntu整站优化代理
  • 做公司网站协议书模板下载百度竞价推广公司
  • 福田蒙派克6座二手值多少钱重庆seo点击工具
  • 有了域名 怎么做网站外贸网站推广方法之一
  • 审美网站长春网站建设路
  • 网站 管理系统域名查询注册信息查询
  • 专业网站设计发展前景推广网站软文
  • 怎么建设seo自己网站网站优化推广教程
  • 最新app开发软件石家庄网站建设seo公司
  • 江苏自助建站系统哪家好推广网站要注意什么
  • 唐河做网站关键字搜索引擎
  • 松江专业做网站公司seo视频教程百度云
  • 淄博品质网站建设竞价推广怎么样
  • 搜狗站群系统资源网站优化排名优化
  • 建设一个网站哪家好网站推广优化的原因
  • 做网站的上海公司有哪些情感链接
  • 梧州做网站建设数字营销公司
  • 加强新闻网站建设建议seo高手培训