首页 > 其他分享 >LeetCode | 383 RanSom Note

LeetCode | 383 RanSom Note

时间:2024-08-09 17:05:26浏览次数:18  
标签:RanSom ransomNote return int length Note magazine 383 arraybucket

分析

赎金信在侦探系列是容易出现的场景,为了不暴露自己的笔迹,利用一本杂志里面已有的字符来组装自己的信。倘若这本杂志的字符不够,那么赎金信就无法完成。这道题与Valid-Anagram本质上是一致的。Anagram要求字符类型和数量完全一致,本题要求杂志里面所有的字符串类型和数量是赎金信的超集

这道题就不花太多时间再继续深究

主类

class Solution {
    public boolean canConstruct(String ransomNote, String magazine) {
        if ( ransomNote == null || magazine == null) {
            return false;
        }  

        if (magazine.length() ==0 || magazine.length() < ransomNote.length()) {
            return false;
        }
    

        int[] arraybucket = new int[26];

        for(int i = 0; i < magazine.length(); i++) {
            arraybucket[magazine.charAt(i) - 'a']++;
        }

        for(int i = 0; i < ransomNote.length(); i++) {
            arraybucket[ransomNote.charAt(i) - 'a']--;

            if (arraybucket[ransomNote.charAt(i)- 'a'] < 0) {
                return false;
            }
        }

        return true;

    }
}

标签:RanSom,ransomNote,return,int,length,Note,magazine,383,arraybucket
From: https://www.cnblogs.com/dolphinmind/p/18351078

相关文章

  • Endnote如何快速导入期刊格式
    首先进入Endnote官网,官网上提供了期刊文献格式的下载地址。 链接:https://endnote.com/downloads/styles/https://endnote.com/downloads/styles/以作者君领域的期刊“ActaMaterialia”为例注意一定要输入期刊全称“ActaMaterialia”,然后点击“research”,会弹出“downlo......
  • Linux下如何安装配置Jupyter Notebook
    JupyterNotebook是一种交互式的开源编程环境,可以方便地创建和共享文档,其中包含实时代码、方程、可视化和叙述性文本。在Linux系统上安装和配置JupyterNotebook需要以下步骤:安装Python和pipJupyterNotebook是基于Python开发的,因此首先需要确保Python已经安装在您的系统上......
  • 手把手教你安装Jupyter Notebook(保姆级教程)
    来源于:https://blog.csdn.net/weixin_43855159/article/details/1377387141.什么是JupyterNotebookJupyterNotebook是一个开源的Web应用程序,允许用户创建和共享包含实时代码、方程、可视化和解释性文本的文档。它最初由IPython团队开发,现在已经成为一个独立的项目,并广泛用于......
  • P3834 【模板】可持久化线段树 2
    P3834【模板】可持久化线段树2-洛谷|计算机科学教育新生态(luogu.com.cn)#include<bits/stdc++.h>usingnamespacestd;usingi64=longlong;template<classNode>structPersidentSegmentTree{#definelc(u)tr[u].l#definerc(u)tr[u].r#definesum(u)t......
  • 代码随想录算法训练营第七天|454.四数相加II,383. 赎金信,15. 三数之和,18. 四数之和,总结
    力扣题部分:454.四数相加II题目链接:.-力扣(LeetCode) ​​​​​思路(map哈希表):    将数组分为两组分别用双重for循环遍历。第一组将来自不同数组的两个数之和(记为sum1)作为map的key,两个数之和出现的次数作为map的value,第二组通过在map查询来自不同数组的两......
  • 在 jupyter Notebook 中导入自定义模块的问题
    假设我们有一个如下的文件结构,#注意:不是实际的目录结构,而是类似的root../tests../src../__init__.pyutils../__init__.pydata.pypipeline.pysqlal../__init__.pysql_alchm.pytest.pyprocess.ipynb......
  • Jupyter NoteBook未授权访问漏洞
    JupyterNotebook(此前被称为IPythonnotebook)是一个交互式笔记本,支持运行40多种编程语言。如果管理员未为JupyterNotebook配置密码,将导致未授权访问漏洞,游客可在其中创建一个console并执行任意Python代码和命令,默认端口:8888步骤一:通过以下fofa语法进行产品搜索..或使用......
  • Mna Notes
    0716A?先考虑已知选取的线段如何算出答案:维护一个\(pos\)表示当前处理到的最右端的右端点,每次在\(pos<l\)的线段中选出\(r\)最小的一个,感性地理解这是最优的。再考虑原问题:使用DP,令\(f_{i,j}\)表示\(pos=i\),已经选取了\(j\)条合法线段的方案数,枚举下一条选取的......
  • Jupyter NoteBook未授权访问漏洞
    JupyterNoteBook未授权访问漏洞JupyterNotebook(此前被称为IPythonnotebook)是一个交互式笔记本,支持运行40多种编程语言。如果管理员未为JupyterNotebook配置密码,将导致未授权访问漏洞,游客可在其中创建一个console并执行任意Python代码和命令,默认端口:8888。漏洞......
  • (全)Python 的虚拟环境构建和jupyter notebook 中虚拟环境切换
    1、在开始菜单打开AnacondaPrompt(anaconda3)2、构建虚拟环境语法:condacreate--name虚拟环境名字python=版本号condacreate--namepy38_env02python=3.83、激活虚拟环境语法:condaactivate虚拟环境名称 4、环境变量的配置“我的电脑”→右键→属性 ......