【2315. 统计星号】

news/2025/1/15 16:49:40/

来源:力扣(LeetCode)

描述:

给你一个字符串 s ,每 两个 连续竖线 '|'一对 。换言之,第一个和第二个 '|' 为一对,第三个和第四个 '|' 为一对,以此类推。

请你返回 不在 竖线对之间,s'*' 的数目。

注意,每个竖线 '|' 都会 恰好 属于一个对。

示例 1:

输入:s = "l|*e*et|c**o|*de|"
输出:2
解释:不在竖线对之间的字符加粗加斜体后,得到字符串:"l|*e*et|c**o|*de|" 。
第一和第二条竖线 '|' 之间的字符不计入答案。
同时,第三条和第四条竖线 '|' 之间的字符也不计入答案。
不在竖线对之间总共有 2 个星号,所以我们返回 2

示例 2:

输入:s = "iamprogrammer"
输出:0
解释:在这个例子中,s 中没有星号。所以返回 0

示例 3:

输入:s = "yo|uar|e**|b|e***au|tifu|l"
输出:5
解释:需要考虑的字符加粗加斜体后:"yo|uar|e**|b|e***au|tifu|l" 。不在竖线对之间总共有 5 个星号。所以我们返回 5

提示:

  • 1 <= s.length <= 1000
  • s 只包含小写英文字母,竖线 ‘|’ 和星号 ‘*’ 。
  • s 包含 偶数 个竖线 ‘|’ 。

方法:模拟

思路

  根据题意,需要统计第偶数个竖线之后,第奇数个竖线之前,以及第一个竖线之前和最后一个竖线之后的星号。可以用一个布尔值 valid 表示接下去遇到的星号是否要纳入统计,初始化为 true,并且每次遇到竖线都要取反,最后返回符合条件的星号数量即可。

代码:

class Solution {
public:int countAsterisks(string s) {bool valid = true;int res = 0;for (int i = 0; i < s.size(); i++) {char c = s[i];if (c == '|') {valid = !valid;} else if (c == '*' && valid) {res++;}}return res;}
};

执行用时:0 ms, 在所有 C++ 提交中击败了100.00%的用户
内存消耗:6.2 MB, 在所有 C++ 提交中击败了53.97%的用户
复杂度分析
时间复杂度:O(n),其中 n 是 s 的长度。只需要遍历 s 一遍。
空间复杂度:O(1)。仅需要常数空间。
author:LeetCode-Solution


http://www.ppmy.cn/news/723553.html

相关文章

Leetcode.2315 统计星号

题目链接 Leetcode.2315 统计星号 Rating : 1251 题目描述 给你一个字符串 s s s &#xff0c;每 两个 连续竖线 ‘|’ 为 一对 。换言之&#xff0c;第一个和第二个 |为一对&#xff0c;第三个和第四个|为一对&#xff0c;以此类推。 请你返回 不在 竖线对之间&#xff0c;…

力扣 2315.统计星号

文章目录 2315.统计星号思路&#xff1a;代码部分 2315.统计星号 给你一个字符串 s &#xff0c;每 两个 连续竖线 ‘|’ 为 一对 。换言之&#xff0c;第一个和第二个 ‘|’ 为一对&#xff0c;第三个和第四个 ‘|’ 为一对&#xff0c;以此类推。 请你返回 不在 竖线对之间…

IP2315 应用笔记

随着电子产品的不断发展&#xff0c;人们对于电子产品充电的速度要求越来越高&#xff0c;今年刚好有个项目用到了IP2315,回顾后整理了一下 一、IP2315是什么&#xff1f; IP2315 是一款集成 MOS 和输入快充协议的高效同步降压转换充电 IC 。 1.用于单节锂电池的充电IC 单节…

C++中typedef和typedef struct的区别

该文只是对以下原文中C部分单独进行了归纳&#xff0c;原文地址&#xff1a;https://blog.csdn.net/shanshanhi/article/details/52268167 typedef是类型定义的意思 &#xff08;1)struct Student struct Student{ int a; }stu1; //stu1是结构体变量 使用时只需通过st…

MapstructPlus的快速集成

https://www.mapstruct.plus/https://www.mapstruct.plus/ # 博主技术栈如下 springboot:2.4.5 lombok:1.8.20 mapstruct-plus:1.3.4 knife4j:4.0.0目录 一、添加依赖&#xff08;谨防依赖冲突&#xff09; 二、如果依赖下不下来&#xff0c;要在maven的setting文件中加入腾讯…

转-云计算、大数据和人工智能的科普类文件

作者&#xff1a; 刘超 www.cnblogs.com/popsuper1982/p/8505203.html 原标题&#xff1a;不是技术也能看懂云计算&#xff0c;大数据&#xff0c;人工智能 我今天要讲这三个话题&#xff0c;一个是云计算&#xff0c;一个大数据&#xff0c;一个人工智能&#xff0c;我为什么要…

通俗易懂的讲:云计算、大数据和人工智能

文章转自&#xff1a; 刘超的通俗云计算 https://www.cnblogs.com/popsuper1982/p/8505203.html 我今天要讲这三个话题&#xff0c;一个是云计算&#xff0c;一个大数据&#xff0c;一个人工智能&#xff0c;我为什么要讲这三个东西呢&#xff1f;因为这三个东西现在非常非常的…

浅谈云计算,大数据和人工智能

原文链接&#xff1a; https://www.cnblogs.com/popsuper1982/p/8505203.html 我今天要讲这三个话题&#xff0c;一个是云计算&#xff0c;一个大数据&#xff0c;一个人工智能&#xff0c;我为什么要讲这三个东西呢&#xff1f;因为这三个东西现在非常非常的火&#xff0c;它们…