判断字符串的两半是否相似

2023-11-02

给你一个偶数长度的字符串 s 。将其拆分成长度相同的两半,前一半为 a ,后一半为 b 。

两个字符串 相似 的前提是它们都含有相同数目的元音('a''e''i''o''u''A''E''I''O''U')。注意,s 可能同时含有大写和小写字母。

如果 a  b 相似,返回 true ;否则,返回 false 。

class Solution {

public:

    bool halvesAreAlike(string s) {

        string a = s.substr(0, s.size() / 2);

        string b = s.substr(s.size() / 2);

        string h = "aeiouAEIOU";

        int sum1 = 0, sum2 = 0;

        for (int i = 0; i < a.size(); i++) {

            if (h.find_first_of(a[i]) != string::npos) {

                sum1++;

            }

        }

        for (int i = 0; i < b.size(); i++) {

            if (h.find_first_of(b[i]) != string::npos) {

                sum2++;

            }

        }

        return sum1 == sum2;

    }

};

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

判断字符串的两半是否相似 的相关文章

随机推荐

  • git解决 error: you need to resolve your current index first

    问题 执行切换代码分支 git checkout featrue 2019 06 24 报错如下 error you need to resolve your current index first 执行git pull代码时报错 Pull
  • styled-components:一本通

    初体验 styled方法 将React组件包装成Styled组件 的三种情况 tagged template literal interpolations 插值表达式 mixin StyledComponent相关特性 extend 继承
  • 计算机系统实验之datalab

    datalab实验是CSAPP中关于整数和浮点数的位运算的实验 对于我们理解位运算和整数 浮点数的位级表示有着很好的帮助 实验目的 修改bits c的C语言代码 使其通过所有在不违反任何编码准则的情况下 在btest中进行测试 进一步熟悉整
  • Java代码中验证IP地址是否可访问【Linux和windows环境下】

    Java代码中验证IP地址是否可访问 Linux和windows环境下 我的需求场景是尝试连接数据源 数据库地址有不同网络环境下的地址 生产 内网 局域网等 所以在连接数据源之前判断一下url中的ip是否可访问 然后决定是否执行下一步操作
  • 解决Qt项目构建或部署时出现的Error while building/deploying project的问题

    解决Qt项目构建或部署时出现的Error while building deploying project的问题 在使用Qt开发项目时 有时会在构建或部署时遇到一些问题 其中最常见的就是Error while building deploy
  • 使用SimPY进行离散事件仿真

    使用SimPY进行离散事件仿真 SimPY是一个Python下的第三方库 可以方便的进行离散事件的仿真 仿真速度比较快 下面记录一下我的一点心得 不保证完全正确 供参考 安装 pip install U simpy 学习资源 可爱的PYTH
  • mysql检查约束_MySQL数据库通过sql语句添加约束和查看约束

    本文主要向大家介绍了MySQL数据库通过sql语句添加约束和查看约束 通过具体的内容向大家展现 希望对大家学习MySQL数据库有所帮助 一 添加约束 1 添加唯一约束 alter table student add constraint u
  • Docker实操6——配置好的强化学习Dockerfile

    自定义专属的强化环境 环境概述 一 文件内容 1 1 sh文件 1 2 换源的txt文件 1 3 测试环境的py文件 终 完整的Dockerfile 小坑 环境概述 基本信息 具体版本 系统 Ubuntu 18 04 LTS 用户 密码 p
  • Vue响应式数据的原理

    在 vue2 的响应式中 存在着添加属性 删除属性 以及通过下标修改数组 但页面不会自动更新的问题 而这些问题在 vue3 中都得以解决 vue3 采用了 proxy 代理 用于拦截对象中任意属性的变化 包括 属性的读写 属性的添加 属性的
  • C/C++使用strcpy函数报错:“XXX处有未经处理的异常:0xC0000005:写入位置0x00000000时发生访问冲突”

    strcpy是一种C语言的标准库函数 它的作用是把含有 0 结束符的字符串复制到另一个地址空间 返回值的类型为char 其原型声明 char strcpy char dest const char src 但使用strcpy函数时我们得注意
  • mobaxterm免费版使用的一个坑记录

    在没有购买mobaxtem专业版的情况下 最多可以创建14个会话 如果超过14个会话后 你对以前创建的会话进行修改 就会修改无效 还是要仔细阅读红色提示 否则修改后 按OK 是可以正常OK的 没有任何的报错 但是保存的信息依然是以前的 这是
  • three.js TextureLoader(纹理加载附带demo) - 04

    文章目录 一 什么是纹理加载 1 属性介绍 2 代码示例 二 纹理加载demo 注意素材位置 三 demo效果 1 素材 2 代码效果 一 什么是纹理加载 纹理一般是指我们常见的在一些第三方程序中创建的图像 如Photoshop或GIMP
  • Rsa加密算法的实现!

    maven 首先要导入Base64的maven依赖
  • 使用rospy 发送 numpy 数组出现错误 ROSSerializationException

    rospy exceptions ROSSerializationException field data must be float type 发送的数组类型是二维数组 就会出现这个问题 把数组改为一维数组 就不会出现该问题了 也就是把数
  • 【C语言】文件相关函数详解

    需要云服务器等云产品来学习Linux的同学可以移步 gt 腾讯云 lt gt 阿里云 lt gt 华为云 lt 官网 轻量型云服务器低至112元 年 新用户首次下单享超低折扣 目录 一 文件和流 1 程序文件 2 数据文件 3 流 二 文件
  • C++面向对象继承与多态(3)

    C 面向对象继承与多态 3 前言 多态 什么是多态 多态的条件 动态绑定的原理 为什么要使用多态 总结 前言 通过前两篇博文 我已经将多态的前提条件总结得七七八八了 这一篇开始正式展开讲多态 以及我们为什么要使用多态 多态 什么是多态 引用
  • QT获取布局器中控件的位置和大小

    在QT中 获取大小和位置有多种方式 有Size Geometry BaseSize pos Geometry rect 等等 但是这些函数都是获取控件没有布局时的位置和大小 如果控件被加入到布局管理器中 那么这些函数就获取不到位置和大小了
  • C语言指针详解(经典,非常详细)

    前言 复杂类型说明 要了解指针 多多少少会出现一些比较复杂的类型 所以我先介绍一下如何完全理解一个复杂类型 要理解复杂类型其实很简单 一个类型里会出现很多运算符 他们也像普通的表达式一样 有优先级 其优先级和运算优先级一样 所以我总结了一下
  • 华为机试:密码强度等级

    一 题目 密码按如下规则进行计分 并根据不同的得分为密码进行安全等级划分 一 密码长度 5 分 小于等于4 个字符 10 分 5 到7 字符 25 分 大于等于8 个字符 二 字母 0 分 没有字母 10 分 全都是小 大 写字 20 分
  • 判断字符串的两半是否相似

    给你一个偶数长度的字符串 s 将其拆分成长度相同的两半 前一半为 a 后一半为 b 两个字符串 相似 的前提是它们都含有相同数目的元音 a e i o u A E I O U 注意 s 可能同时含有大写和小写字母 如果 a 和 b 相似 返