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

C语言 | Leetcode C语言题解之第383题赎金信

题目:

题解:

bool canConstruct(char * ransomNote, char * magazine){
    int r = strlen(ransomNote);//首先是我们的目标数组和我们的提供方数组长度
    int m = strlen(magazine);
    if (r > m)
    return false;//如果提供的数量都不够补充目标,那肯定是不行的。故:false
    int ans[26] = {0};
    for (int i=0; i<r; i++)
    {
        ans[ransomNote[i] - 'a']++;
        ans[magazine[i] - 'a']--;
    }
//然后我们要看26个字母出现在目标数组中的字母对应的个数和同样的提供方数组的元素的个数,前者是正数或者是负数。
    if(r < m)
    {
        for(int i=r; i<m; i++)
    {
        ans[magazine[i] - 'a']--;
    }
    }
    for(int i=0; i<26; i++)
    {
        if(ans[i] > 0)
        return false;
    }
//如果最后得到的每一个值都是正数,那说明我们的提供方数组是没有剩余的。 false
    return true;
}//除了这两个条件之外,其他的全部都是对的。 true

http://www.kler.cn/news/285259.html

相关文章:

  • 宿舍|基于SprinBoot+vue的宿舍管理系统(源码+数据库+文档)
  • 访问者模式详解
  • 【摸鱼笔记】python 提取和采集 finereport 未绑定目录的报表模板
  • GPT-SoVITS:零样本语音合成AI
  • 如何使用pytest的fixtures以及pytest-dependency插件来管理接口之间的依赖关系(下)
  • V8 引擎的核心架构
  • DCB简介
  • Python入门全解析丨Part3-Python的循环语句
  • 英语2-小作文
  • Java | Leetcode Java题解之第386题字典序排数
  • 性能优化笔记二(本地缓存)
  • 05:【江科大stm32】:定时器输出比较功能(PWM)
  • Android 优化之 查找so 文件的来源
  • Camtasia 2024 v2024.0.6 for Mac 中文版 屏幕录像视频录制编辑软件
  • 找出两个序列的中位数
  • Python3.0以后各个版本区别介绍
  • 网络模型及协议介绍
  • STM32原理图一些引脚VDDA/VSSA/VBAT/OSC/NRST/BOOT
  • 随手记录第十五话 -- Spring Boot 3.2.3+Grafana+Prometheus+Loki实现一套轻量级监控加日志收集系统
  • 波导阵列天线单元学习笔记7 一种用直接金属激光烧结考虑的轻质量,宽带,双圆极化波导腔体阵列
  • Datawhale X 李宏毅苹果书 AI夏令营 Task2打卡
  • c++命令模式
  • Vscode推送代码到 Gitee
  • 关于一个早期的计算机网络的理解
  • Nginx 负载均衡深入指南:`proxy_pass` 指令的高效使用
  • Nginx: 负载均衡场景下上游服务器异常时的容错机制
  • docker python 3.11 容器报错
  • Windows连接虚拟机中的mysql5失败
  • C程序设计(潭浩强教授版)精选程序题
  • Bluetooth: gatt profile