2839. 判断通过操作能否让字符串相等 I

题目描述:

给你两个字符串 s1 和 s2 ,两个字符串的长度都为 4 ,且只包含 小写 英文字母。

你可以对两个字符串中的 任意一个 执行以下操作 任意 次:

选择两个下标 i 和 j 且满足 j - i = 2 ,然后 交换 这个字符串中两个下标对应的字符。
如果你可以让字符串 s1 和 s2 相等,那么返回 true ,否则返回 false 。

示例 1:

输入:s1 = “abcd”, s2 = “cdab”
输出:true
解释: 我们可以对 s1 执行以下操作:

  • 选择下标 i = 0 ,j = 2 ,得到字符串 s1 = “cbad” 。
  • 选择下标 i = 1 ,j = 3 ,得到字符串 s1 = “cdab” = s2 。
    示例 2:

输入:s1 = “abcd”, s2 = “dacb”
输出:false
解释:无法让两个字符串相等。

提示:

s1.length == s2.length == 4
s1 和 s2 只包含小写英文字母。

思路
题意就是,可以交换距离为2的两个字母,通过这个操作使得两个字符串相等。这道题的难度很低,因为它的字符串长度只有4.这里我们抛开长度不弹,假设他是一个长度很长的字符串,我们这里介绍的本类题的通用做法。

因为可以交换距离为2的两个字符,也就是说,偶数位上的字符是可以所以交换的,奇数位上的字符也是可以交换的。只要两个字符串偶数位上的所有字符都相同,奇数位上的字符都相同,就可以通过交换操作使两个字符串相同。

代码:

class Solution {
public:bool canBeEqual(string s1, string s2) {int cnt1[2][26]{} , cnt2[2][26]{};for(int i = 0 ; i < s1.length() ; i++){cnt1[i%2][s1[i]-'a']++;cnt2[i%2][s2[i]-'a']++;}for(int i = 0 ; i < 26 ; i++){if(cnt1[0][i] == cnt2[0][i] && cnt1[1][i] == cnt2[1][i])continue;elsereturn false;}return true;}
};

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

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

相关文章

[嵌入式系统-75]:RT-Thread-快速上手:正点原子探索者 STM32F407示例

目录 正点原子探索者 STM32F407 上手指南 1. 简介 2. 准备工作 3. 运行第一个示例程序 3.1 编译下载 3.2 运行 继续学习 正点原子探索者 STM32F407 上手指南 1. 简介 探索者 STM32F407 是正点原子推出的一款基于 ARM Cortex-M4 内核的开发板&#xff0c;最高主频为 16…

施工技术杂志社投稿信箱邮箱

施工技术杂志投稿信箱邮箱 产品说明 《施工技术》杂志 《施工技术》 投稿信箱&#xff1a;sgjszzs126.com 《施工技术》 投稿信箱&#xff1a;sgjszzs126.com 《施工技术》 投稿信箱&#xff1a;sgjszzs126.com 咨询电话&#xff1a;13356222771 咨询电话&#xff1a;1…

即将研究生入学,记录一些遇到的疑问

以下是目前情况。 19年入学东北林业大学&#xff0c;23年毕业&#xff0c;24考研二战本校调剂至福州大学矿业工程。 所幸&#xff0c;有课题组做与计算机交叉的智慧矿山方向&#xff0c;并联系了第一位导师。等待一月有余&#xff0c;该导师通知我说他的第二个研究生名额未拿到…

双等号运算符的运算和转换规则

1. 运算规则 两端存在 NaN&#xff0c;返回 false NaN NaN; // false NaN 1; //false undefined 和 null 只有与自身比较&#xff0c;或者相互比较时&#xff0c;才返回 true&#xff0c;和其他原始类型比较都返回 false。 undefined null; // true undefined undefine…

积木玩具CPC认证,CPC认证常规周期及流程

积木玩具CPC认证概述 CPC认证的必要性 CPC认证&#xff0c;即儿童产品证书&#xff08;Childrens Product Certificate&#xff09;&#xff0c;是指面向12岁及以下儿童的玩具产品必须符合美国联邦安全标准的一种认证。积木玩具因其结构的开放性和多样性&#xff0c;成为了儿…

Nginx详解:高性能的Web服务器和反向代理服务器

Nginx是一款轻量级、高性能的Web服务器和反向代理服务器&#xff0c;以其出色的性能和稳定性而闻名于世。本文将深入探讨Nginx的各项特性、架构和功能&#xff0c;以及其在现代Web开发中的应用场景和优势&#xff0c;帮助读者更全面地了解和掌握这一优秀的服务器软件。 1. Ngi…

系统稳定性判定分析(二)---- 线性定常系统状态方程稳定性判据与n阶常微分方程稳定性判据的等价性

文章目录 n n n 阶线性齐次常微分方程与一阶常微分方程系统的等价转换多项式的根与常系数矩阵特征值的关联有关多项式得概念 n n n 阶线性齐次常微分方程与一阶常微分方程系统的等价转换 考虑如下 n n n 阶线性齐次常微分方程&#xff1a; a 0 x ( n ) a 1 x ( n − 1 ) ……

关键点检测——面部情绪数据集

引言 亲爱的读者们&#xff0c;您是否在寻找某个特定的数据集&#xff0c;用于研究或项目实践&#xff1f;欢迎您在评论区留言&#xff0c;或者通过公众号私信告诉我&#xff0c;您想要的数据集的类型主题。小编会竭尽全力为您寻找&#xff0c;并在找到后第一时间与您分享。 …

算法提高之字串变换

算法提高之字串变换 核心思想&#xff1a;双向广搜 双向bfs 建立两个队列 一起bfs到中间态 #include <iostream>#include <cstring>#include <algorithm>#include <queue>#include <unordered_map>using namespace std;const int N 6;int n;…

【北京迅为】《iTOP-3588从零搭建ubuntu环境手册》-第6章 安装Samba

RK3588是一款低功耗、高性能的处理器&#xff0c;适用于基于arm的PC和Edge计算设备、个人移动互联网设备等数字多媒体应用&#xff0c;RK3588支持8K视频编解码&#xff0c;内置GPU可以完全兼容OpenGLES 1.1、2.0和3.2。RK3588引入了新一代完全基于硬件的最大4800万像素ISP&…

【数据结构】顺序表(一)

✨✨✨专栏&#xff1a;数据结构 &#x1f9d1;‍&#x1f393;个人主页&#xff1a;SWsunlight 不怕别人看不起&#xff0c;就怕自己不争气。路是人走出来的&#xff0c;关键要靠自己闯。振作起来&#xff0c;生活的含义就是前进。 目录 一、顺序表的概念&#xff1a; 二…

SQLite性能测试(插入)

最近一直在思考一个问题&#xff0c;SQLite 做到这么轻量级&#xff0c;那它注定不会像 MySql 一样强性能&#xff0c;那么它的性能怎么样呢&#xff1f;并发量多高呢&#xff1f; 官方解释&#xff1a; About SQLite 最大数据库大小&#xff1a;281TB 最大行大小&#xff1…

音视频--AAC编码解析和示例

目录 1&#xff1a;AAC编码介绍 2&#xff1a;AAC格式介绍 3&#xff1a;AAC -ADTS帧组成 4&#xff1a;AAC-ADTS&#xff1a;&#xff08;adts_fixed_header&#xff09;格式介绍 5&#xff1a;AAC-ADTS&#xff1a;&#xff08;adts_variable_header&#xff09;格式介绍…

什么是机器视觉应用解决方案?

机器视觉应用解决方案通常指的是利用视觉系统自动检测、处理和分析图像的技术方案&#xff0c;以便执行各种工业或研究任务&#xff0c;如质量控制、自动检测、导航和识别等。在LabVIEW环境中&#xff0c;这些解决方案通常涉及到硬件和软件的紧密集成&#xff0c;以实现高效的数…

C语言收尾 预处理相关知识

一. 预处理详解 1.1 预定义符号 FILE //进行编译的源文件LINE //文件当前的行号DATE //文件被编译的日期TIME //文件被编译的时间FUNCTION //文件当前所在的函数STDC //如果编译器遵循ANSI C标准&#xff0c;其值为1&#xff0c;否则未定义 这些预定义符号都是语言内置的 我们…

用 Python 和 AkShare 进行个股数据清洗:源码剖析和建议优化

这是《个股清洗源码》一个获取股票买卖盘信息并将其打印到控制台并保存到文件的脚本。 下面我们来对源码进行剖析 先复习一下源码 import os import akshare as ak from akshare import stock_bid_ask_em from datetime import datetime import pandas as pd from io import …

类和对象中篇

类的六个默认成员函数 如果一个类中什么成员都没有&#xff0c;简称为空类。空类中什么都没有吗&#xff1f;并不是的&#xff0c;任何一个类在我们不写的情况下&#xff0c;都会自动生成下面6个默认成员函数 ①初始化和清理&#xff1a;构造函数和析构函数 ②拷贝复制&#x…

无线通信模块通过TCP/IP协议实现与PC端的数据传输

在当今的信息时代&#xff0c;无线通信技术的发展日新月异&#xff0c;为我们的工作和生活带来了极大的便利。其中&#xff0c;无线通信模块通过TCP/IP协议向PC端传送数据已经成为了一种常见的通信方式。本文将详细介绍这一过程的主要步骤和涉及的关键技术&#xff0c;并以WIFI…

Linux——信号量

什么是信号量&#xff1f; 信号量是用来用于同步和互斥的。其实就是一个计数器&#xff0c;进行PV操作&#xff0c;其中P操作就是让计数器–&#xff0c;V操作就是让计数器。 从物理上说明信号量的P、V操作的含义。 P(S)表示申请一个资源&#xff0c;S.value>0表示有资源可…

OBS插件--复合模糊

复合模糊 复合是一款滤镜插件&#xff0c;支持多种模糊类型和多种蒙版效果。支持模糊源的部分显示区域&#xff0c;可以反选区域进行模糊&#xff0c;这个功能对于场景部分区域需要遮盖非常实用。 下面截图演示下操作步骤&#xff1a; 首先&#xff0c;打开 OBS直播助手 在…