leetcode 5390. 数青蛙(C++)
给你一个字符串 croakOfFrogs
,它表示不同青蛙发出的蛙鸣声(字符串 "croak" )的组合。由于同一时间可以有多只青蛙呱呱作响,所以 croakOfFrogs
中会混合多个 “croak” 。请你返回模拟字符串中所有蛙鸣所需不同青蛙的最少数目。
注意:要想发出蛙鸣 "croak",青蛙必须 依序 输出 ‘c’, ’r’, ’o’, ’a’, ’k’
这 5 个字母。如果没有输出全部五个字母,那么它就不会发出声音。
如果字符串 croakOfFrogs
不是由若干有效的 "croak" 字符混合而成,请返回 -1
。
示例 1:
输入:croakOfFrogs = "croakcroak" 输出:1 解释:一只青蛙 “呱呱” 两次
示例 2:
输入:croakOfFrogs = "crcoakroak" 输出:2 解释:最少需要两只青蛙,“呱呱” 声用黑体标注 第一只青蛙 "crcoakroak" 第二只青蛙 "crcoakroak"
示例 3:
输入:croakOfFrogs = "croakcrook" 输出:-1 解释:给出的字符串不是 "croak" 的有效组合。
示例 4:
输入:croakOfFrogs = "croakcroa" 输出:-1
提示:
1 <= croakOfFrogs.length <= 10^5
- 字符串中的字符只有
'c'
,'r'
,'o'
,'a'
或者'k'
C++
class Solution {
public:int minNumberOfFrogs(string croakOfFrogs) {map<char,int> tmp;int res=0;for(auto c:croakOfFrogs){if('c'==c){tmp['c']++;res=max(res,tmp['c']);}else if('r'==c){tmp['r']++;}else if('o'==c){tmp['o']++;}else if('a'==c){tmp['a']++;}else{tmp['k']++;}if(tmp['r']>tmp['c'] || tmp['o']>tmp['r'] || tmp['a']>tmp['o'] || tmp['k']>tmp['a']){return -1;}if('k'==c){tmp['c']--;tmp['r']--;tmp['o']--;tmp['a']--;tmp['k']--;}}for(auto it:tmp){if(it.second!=0){return -1;}}return res;}
};
leetcode 5390. 数青蛙(C++)相关推荐
- LeetCode - 1419 数青蛙
题目来源 1419. 数青蛙 - 力扣(LeetCode) 题目描述 给你一个字符串 croakOfFrogs,它表示不同青蛙发出的蛙鸣声(字符串 "croak" )的组合.由于同 ...
- LeetCode 1419. 数青蛙(脑洞题)
1. 题目 给你一个字符串 croakOfFrogs,它表示不同青蛙发出的蛙鸣声(字符串 "croak" )的组合. 由于同一时间可以有多只青蛙呱呱作响,所以 croakOfFro ...
- leetcode 1419 数青蛙
描述: 给你一个字符串 croakOfFrogs,它表示不同青蛙发出的蛙鸣声(字符串 "croak" )的组合.由于同一时间可以有多只青蛙呱呱作响,所以 croakOfFrogs ...
- LeetCode 三数之和 — 优化解法
LeetCode 三数之和 - 改进解法 题目:给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复 ...
- LeetCode1419. 数青蛙
数青蛙 给你一个字符串 croakOfFrogs,它表示不同青蛙发出的蛙鸣声(字符串 "croak" )的组合.由于同一时间可以有多只青蛙呱呱作响,所以 croakOfFrogs ...
- 数青蛙、[USACO10FEB]Chocolate Giving S
一.1419. 数青蛙 思路 这道题有俩种解法,一是记数,二是贪心 记数: 这是官方的题解 我们用frog_ num来表示现在正在发出蛙鸣声的青蛙数目,用cnt[c] 示已经发出-次有效蛙鸣中的字符c ...
- java数青蛙_第十一届蓝桥杯第三场软件类省赛 C++ B组 题解
试题 A: 数青蛙 "一只青蛙一张嘴,两只眼睛四条腿.两只青蛙两张嘴,四只眼睛八条腿.三只青蛙三张嘴,六只眼睛十二条腿.--二十只青蛙二十张嘴,四十只眼睛八十条腿." 请问上面这段 ...
- Leetcode 1419:数青蛙(超详细的解法!!!)
给你一个字符串 croakOfFrogs,它表示不同青蛙发出的蛙鸣声(字符串 "croak" )的组合.由于同一时间可以有多只青蛙呱呱作响,所以 croakOfFrogs 中会混合 ...
- java数青蛙_『字节跳动LeetCode联合周赛』--周赛185(JavaScript) | OFEII
前言
- leetcode 263, 264, 1201, 313. Ugly Number I, II, III, Super Ugly Number(leetcode 丑数问题合集)
263. Ugly Number https://leetcode.com/problems/ugly-number/ 本题题解由下面的 264. Ugly Number II 改造而来,所以效率会比 ...
最新文章
- JavaScript面试系列:JavaScript设计模式之桥接模式和懒加载
- 11个三相异步电动机常见故障与维修方法。
- struts2类型转换+校验
- linux远程执行迷路,linux操作系统基础
- Linux shell脚本的字符串截取
- netmon中解析非1433端口的TDS协议
- wamp下安装php的xdebug调试的方法
- RTCM CRC-24校验计算
- 说下我自己对空号检测的理解跟心得
- linux中zip文件能转换tar,linux 怎么把rar转换成zip 或者 tar
- 计算机论文目录大全,毕业论文目录范文
- 【百科】有关地震的一些知识
- hardfault常见原因_keil遇到hardfault时原因的查找
- 将真分数分解为埃及分数
- 如何开发Chrome扩展程序
- 应用该不该为视网膜显示屏而优化?这是个问题
- 扬帆起航——第一篇博客
- 最全的android各国语言对照表-转载
- 最令我。。。。的一首诗
- 浅谈安防监控中视频图像处理技术