你有一套活字字模 tiles,其中每个字模上都刻有一个字母 tiles[i]。返回你可以印出的非空字母序列的数目。

注意:本题中,每个活字字模只能使用一次。

示例 1:

输入:"AAB"
输出:8
解释:可能的序列为 "A", "B", "AA", "AB", "BA", "AAB", "ABA", "BAA"。

示例 2:

输入:"AAABBC"
输出:188

提示:

  1. 1 <= tiles.length <= 7
  2. tiles 由大写英文字母组成

思路:用hashmap来存储每个字符的个数,然后依次遍历

class Solution {int num;public int numTilePossibilities(String tiles) {if(tiles == null || tiles.length() <= 0) return 0;char ch[] = tiles.toCharArray();num = 0;HashMap<Character,Integer> hm = new HashMap<>();for(char c : ch) {if(hm == null || !hm.containsKey(c)) hm.put(c,1);else hm.put(c,hm.get(c)+1);}help(ch,hm);return num;}private void help(char[] ch,HashMap<Character,Integer> hm){for(Map.Entry<Character, Integer> c : hm.entrySet()){if(c.getValue() <=0) continue;else {num++;hm.put(c.getKey(),c.getValue()-1);help(ch,hm);hm.put(c.getKey(),c.getValue()+1);}}}
}

1079. 活字印刷相关推荐

  1. LeetCode 1079 活字印刷

    1079. 活字印刷 题目 思路 先计数,dfs组合枚举. 代码 class Solution {public:int numTilePossibilities(string tiles) {unor ...

  2. 1079.活字印刷(Python)

    1079.活字印刷 你有一套活字字模tiles,其中每个字模上都刻有一个字母tiles[i].返回你可以印出的非空字母序列的数目. 注意:本题中,每个活字字模只能使用一次. 示例1: 输入:" ...

  3. Leetcode.1079 活字印刷

    题目链接 Leetcode.1079 活字印刷 Rating : 1741 题目描述 你有一套活字字模 tiles,其中每个字模上都刻有一个字母 tiles[i].返回你可以印出的非空字母序列的数目. ...

  4. 【leetcode】1079.活字印刷

    活字印刷 问题描述 问题分析 解决方案 问题描述 活字印刷 你有一套活字字模 tiles,其中每个字模上都刻有一个字母 tiles[i].返回你可以印出的非空字母序列的数目. 注意:本题中,每个活字字 ...

  5. leetcode —— 1079. 活字印刷

    你有一套活字字模 tilestilestiles,其中每个字模上都刻有一个字母 tiles[i]tiles[i]tiles[i].返回你可以印出的非空字母序列的数目. 示例 1: 输入:"A ...

  6. LeetCode 1079. 活字印刷

    想看更多算法题,可以扫描上方二维码关注我微信公众号"数据结构和算法",截止到目前我已经在公众号中更新了500多道算法题,其中部分已经整理成了pdf文档,截止到目前总共有1000多页 ...

  7. Leetcode刷题java之1079. 活字印刷

    可参考本博客回溯法专栏的最后一条的回溯法框架 https://blog.csdn.net/qq_41901915/article/details/104113330 执行结果: 通过 显示详情 执行用 ...

  8. 1079 活字印刷

    题目描述: 你有一套活字字模 tiles,其中每个字模上都刻有一个字母 tiles[i].返回你可以印出的非空字母序列的数目. 注意:本题中,每个活字字模只能使用一次. 示例 1: 输入:" ...

  9. 如何学好C语言--你的学渣朋友告诉你

    光说不练假把式,光练不说傻把式,又练又说真把式. 真实感受,不是我不想学,是我真的不知道我哪里不会啊和得怎么做啊?本文作者当初就是这么废掉的 推荐两个练习的网站 (一)C语言网 https://www ...

最新文章

  1. 使用expect 打通到其他服务器无密码访问
  2. ACE_Proactor UDP V2.0
  3. 三十九、Java集合中的HashSet和TreeSet
  4. Facebook发布神经蛋分离法,可从嘈杂环境中提取音视频
  5. 总结分析一下三种求解最短路问题的算法,dijkstra算法,spfa算法,floyd算法。
  6. 计算机职业规划500字中专,计算机中专生职业规划范文500字中专生职业生涯规划书范文.doc...
  7. 4k hidpi 黑苹果_黑苹果如何开启HiDPI? 黑苹果一键开启 macOS HiDPI教程
  8. python正态检验_Python的数据正态性检验
  9. c语言中sub指令,sub指令(汇编语言sub用法)
  10. NAND Flash一般地址线和数据线共用,对读写速度有一定影响;而NOR Flash闪存数据线和地址线分开,所以相对而言读写速度快一些。
  11. PHP的WMB队列消费代理的实现
  12. 【贪玩巴斯】数字图像处理基础课堂笔记(二)——Matlab基础「下」与 Matlab编程基础 2021-09-26
  13. Excel表格常用复制粘贴技巧,你真的会操作?
  14. 离线部署GitLab
  15. 简述eureka的自我保护模式? 如何配置其自我保护模式
  16. win11延迟高 win11有延迟如何解决?
  17. c语言合法浮点数,c语言中什么是浮点数
  18. 在Matlab R2019版本上分析simulink模型的BODE图、阶跃响应、单位脉冲响应
  19. Python代码解析数据
  20. Python:StringIO与cStringIO

热门文章

  1. 【MDT】MacBook Air 横评 MateBook 13
  2. qt 设置背景图片、背景色步骤
  3. 软件公司如何提升效能?研发团队的北极星指标
  4. 高数——单调有界定理
  5. 【20保研】北京航空航天大学计算机学院2019年全国优秀大学生夏令营活动通知...
  6. 【方同学】是如何高效的使用IntelliJ IDEA
  7. “玛莎拉蒂狂撞宝马”最新后续:你以为的富养,99%都是错的!
  8. 浅析XCode编译过程
  9. 【因式分解】莫比乌斯函数
  10. html广告拦截网吧,网吧广告拦截软件是怎么安装的