力扣383-赎金信

赎金信

题目链接

解题思路

  1. 统计magazine中字符出现的字符,用哈希表保存
  2. 遍历ransomNote,记录其中出现的字符,出现一次,哈希表删除对应的字符
  3. 遍历哈希表,如果有的字符出现的次数为负数,则不能拼凑出目标字符
class Solution {
public:bool canConstruct(string ransomNote, string magazine) {bool res = true;unordered_map<char,int> map;for(int i = 0;i<magazine.length();i++){map[magazine[i]]++;}for(int i = 0;i<ransomNote.length();i++){map[ransomNote[i]]--;}auto iter = map.begin();while(iter != map.end()){if(iter->second < 0){res = false;break;}++iter;}return res;}
};
优雅的写法
class Solution {
public:bool canConstruct(string ransomNote, string magazine) {unordered_map<char,int> hash;for(auto a : magazine) hash[a]++;for(auto b : ransomNote){if(!hash[b]) return false;hash[b]--;}return true;}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/671079.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Javascript入门学(基础)

软件篇 JS基础语法第一天 1.javascript介绍 1.1 js是什么 是什么 是一种运行在客户端&#xff08;浏览器&#xff09;的编程语言&#xff0c;实现人机交互效果&#xff0c;而html和css是标记性语言&#xff0c;并非编程语言有什么用 js的组成 htmlcssjs实现按钮点击功能 …

Vision Transfomer系列第一节---从0到1的源码实现

本专栏主要是深度学习/自动驾驶相关的源码实现,获取全套代码请参考 这里写目录标题 准备逐步源码实现数据集读取VIt模型搭建hand类别和位置编码类别编码位置编码 blocksheadVIT整体 Runner(参考mmlab)可视化 总结 准备 本博客完成Vision Transfomer(VIT)模型的搭建和flowers数…

什么是大模型

目录 让你了解什么是大模型什么是大模型&#xff1f;大模型的应用场景常见的大模型技术实例分析&#xff1a;深度学习语言模型GPT-3 让你了解什么是大模型 大模型&#xff08;Big Model&#xff09;是指在机器学习和人工智能领域中处理大规模数据和复杂模型的一种方法或技术。…

股票K线简介

股票K线&#xff08;K-Line&#xff09;是用于表示股票价格走势的图形&#xff0c;主要由四个关键价格点组成&#xff1a;开盘价、收盘价、最高价和最低价。K线图广泛应用于股票市场技术分析中&#xff0c;它提供了丰富的信息&#xff0c;帮助分析师和投资者理解市场的行情走势…

一周学会Django5 Python Web开发-Django5介绍及安装

锋哥原创的Python Web开发 Django5视频教程&#xff1a; 2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~共计10条视频&#xff0c;包括&#xff1a;2024版 Django5 Python we…

leetcode 74.搜索二维矩阵

本题其实就是一个变形的二分查找而已。这里不采用两次二分或者一次二分的方法了&#xff0c;leetcode上是很详细的&#xff0c;这里就讲讲普通的思路是怎样的。 思路&#xff1a;首先就是把二维数组化为一维数组&#xff0c;这个时候一维数组需要开的大一些&#xff0c;不然的…

算法练习-四数之和(思路+流程图+代码)

难度参考 难度&#xff1a;中等 分类&#xff1a;数组 难度与分类由我所参与的培训课程提供&#xff0c;但需要注意的是&#xff0c;难度与分类仅供参考。且所在课程未提供测试平台&#xff0c;故实现代码主要为自行测试的那种&#xff0c;以下内容均为个人笔记&#xff0c;旨在…

“过年买年货,花光了我的年终奖”

【潮汐商业评论/原创】 前脚刚进家门&#xff0c;后脚快递电话一个接着一个。 临近春节&#xff0c;Julia是提前批回家的年轻人&#xff0c;与Julia一同到家的还有她的年货。上至大小家电&#xff0c;下到坚果零食&#xff0c;短短几天快递就堆满了客厅。 吃的喝的还能理解&…

Linux 【yum 和 rpm 的区别】

结论 rpm和yum都是在Red Hat系列的Linux发行版&#xff08;如Fedora、CentOS、RHEL等&#xff09;中用于管理软件包的工具&#xff0c;但它们的使用场景和功能有所不同。 rpm&#xff08;Red Hat Package Manager&#xff09;是一个较低级别的工具&#xff0c;它直接处理.rpm文…

MySQL的优化

优化MySQL的几点&#xff1a; 从设计上优化 从查询上优化 从索引上优化 从存储上优化 1&#xff0c;SQL的执行频率 MySQL客户端连接成功后&#xff0c;通过show [session/global] status命令可以查看服务器状态信息。通过查看状态信息可以查看对当前数据库的主要操作类型…

数论:修改数列

5462. 修改数列 - AcWing题库 给定一个长度为 n 的正整数数列 a1,a2,…,an。 你可以对其中任意个&#xff08;可以是 0 个&#xff09;元素进行修改。 但是&#xff0c;每个元素最多只能修改一次&#xff0c;每次修改&#xff1a;要么令其加 11&#xff0c;要么令其减 11。 请问…

【01】判断素数/质数(C语言)

目录 &#xff08;1&#xff09;素数特点&#xff1a;只能被1和本身整除 &#xff08;2&#xff09;代码如下&#xff1a; &#xff08;3&#xff09;运行结果如下 ​编辑 &#xff08;4&#xff09;函数引申 &#xff08;1&#xff09;素数特点&#xff1a;只能被1和本身…

数字图像处理(实践篇)四十三 OpenCV-Python 使用SURF算法检测图像上的特征点的实践

目录 一 SURF算法概述 1 积分图 2 SURF算法 3 SIFT与SURF 二 涉及的函数 三 实践 一 SURF算法概述

在容器中使用buildah构建镜像

简介 buildah是一个构建OCI标准镜像的工具&#xff0c;可以用来替代docker build 在常见的linux发行版中可直接通过包管理工具安装使用 # centos yum install buildah# ubuntu/debian apt install buildah# alpine apk add buildah其他发行版安装方法详见 github&#xff0c…

Django通过Json配置文件分配多个定时任务

def load_config():with open("rule.json", rb)as f:config json.load(f)return configdef job(task_name, config, time_interval):# ... 通过task_name判断进行操作if task_name get_data_times:passdef main():config load_config()for task_name, task_value…

C++——stack与queue与容器适配器

1.stack和queue的使用 1.1stack的使用 栈这种数据结构我们应该挺熟了&#xff0c;先入后出&#xff0c;只有一个出口(出口靠栈顶近)嘛 stack的底层容器可以是任何标准的容器类模板或者一些其他特定的容器类&#xff0c;这些容器类应该支持以操作&#xff1a; empty&#xff1…

专业知识库:中小型企业必备的高效工具

在如今这个信息爆炸的时代&#xff0c;知识管理已经成为了企业运营的重要环节。特别是对于中小型企业来说&#xff0c;如何有效地管理公司内部的知识&#xff0c;提高工作效率&#xff0c;已经成为了一个亟待解决的问题。在这篇文章中&#xff0c;我将向大家介绍一种能够帮助企…

Python轴承故障诊断入门教学

目录 往期精彩内容&#xff1a; 1 工作室实验平台介绍 2 轴承故障诊断教程—数据集 3 轴承故障诊断教程—算法模型 3.1 振动分析方法 3.2 频域特征提取 3.3 时域特征提取 3.4 模型基础的机器学习方法 3.5 深度学习方法 3.6 时频域融合方法 3.7 信号重构方法 3.8 基…

Linux-----文本三剑客补充~

一、模糊匹配 模糊匹配用 ~ 表示包含&#xff0c;!~表示不包含 1、匹配含有root的列 [rootlocalhost ~]#awk -F: /root/ /etc/passwd root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sbin/nologin [rootlocalhost ~]#awk -F: $1~ /root/ /etc/passw…

知名开发工具RubyMine全新发布v2023.3——支持AI Assistant

RubyMine 是一个为Ruby 和 Rails开发者准备的 IDE&#xff0c;其带有所有开发者必须的功能&#xff0c;并将之紧密集成于便捷的开发环境中。 RubyMine v2023.3正式版下载 新版本改进AI Assistant支持、Rails应用程序和引擎的自定义路径、对Rails 7.1严格locals的代码洞察、RB…