python-双胞胎字符串

[问题描述]:给定两个字符串s和t,每次可以任意交换s的奇数位和偶数位的字符,即奇数位的字符可以与任意其它奇数位的字符交换,偶数位的字符同样也可以与任意偶数位的字符的字符交换,问能否在有限的次数的交换下使s变为t?
[问题示例]:输入s=”abcd“,t=”cdab”,输出”Yes“,第一次a与c交换,第二次b与d交换;s输入s=”abcd”,t=”bcda”,输出”No“,无论如何交换,始终无法将s=”abcd”变为s=t=”bcda”。


完整代码如下:


a=input()
b=input()
c=[]
if len(a)!=len(b):
    print("No")
else:
    for m in range(0,len(a),2):
        for n in range(0,len(b),2):
            if a[0]==b[0+m] and a[1]==b[1+n]:
                c.append(1)
            else:
                c.append(0)
if 1 in c:
    print("Yes")
else:
print("No")


代码解释:
“a=input()
b=input() ”,让用户输入两个字符串。
“if len(a)!=len(b):
print("No") ”,判断用户输入的两个字符串长度是否相同(字符数是否相同),如果不相同,则输出“No”。
“else:
    for m in range(0,len(a),2):
        for n in range(0,len(b),2):
            if a[0]==b[0+m] and a[1]==b[1+n]:
                c.append(1)
            else:
                c.append(0)   ”,如果相同,则循环得到s所有按规则调换得到的结果,并分别判断其是否与t相同,如果相同,则在列表c中添加一个1,如果不相同则在列表c中添加一个0。
“if 1 in c:
    print("Yes")
else:
print("No") ”,循环结束后,判断列表c中是否有1(1等效于s经调换得到t的结果),如果有,则打印“Yes”,否则打印“No”。
(注释:s,t的字符串长度必须为偶数
if 1 in c:
    print("Yes")
else:
    print("No")

这个方法非常重要,即循环过程中我虽然不知道我所需要的结果会出现在哪一次循环中,但只要我将所有存入列表中,一但我在列表中查询到我所需要的结果,即可判定存在这种结果,该方法适用于在未知数量的结果中查询是否存在所求结果。)


运行效果展示:

54580adfcbba48748ee9025e3c036682.jpg

006ae34d5bcf46a18f04af291a894a61.jpg 

      (声明:以上内容均为原创)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

0基础学习Elasticsearch-Quick start

文章目录 1 背景2 前言3 快速部署ES4 快速部署Kibana5 发送请求给ES5.1 打开Kibana控制台5.2 通过REST API发送请求5.3 通过curl发送请求5.4 添加数据5.4.1 添加单个document5.4.2 添加多个document 5.5 搜索数据5.5.1 搜索所有documents5.5.2 match查询 6 总结 1 背景 因电商项…

【算法】模拟算法——外观数组(medium)

题解:模拟算法——外观数组(medium) 目录 1.题目2.题解3.参考代码4.总结 1.题目 题目链接:LINK 2.题解 首先应该理解题意: 就是开始给你一个字符串,然后你对其进行描述。 描述规则是:连续的数字为一组,…

大学生社团活动平台系统基于springboot+vue的社团管理系统java项目sprignboot项目

文章目录 大学生社团活动平台一、项目介绍二、部分功能截图三、部分代码展示四、底部获取项目源码(9.9¥带走) 大学生社团活动平台 一、项目介绍 基于springbootvue的前后端分离大学生社团活动平台 系统角色 : 学生、社长、管理员 1、学生…

自学 Java 怎么入门?

关于自学 Java 如何入门这一重要课题,在此为大家进行详细阐述。 在此之前,如果大家有兴趣的话,可以看看我自己精心整理的嵌入式入门资料,这些资料将全部免费送给大家。其中包含了编程教学内容、详细的视频讲解、实用的数据库资料…

Java项目:92 基于SSM的办公管理系统

作者主页:舒克日记 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文中获取源码 基于SSM的办公管理系统 1、项目介绍 基于SSM的办公管理系统主要是对于办公用品的申领进行管理,系统分为三种角色,超级管理员、企业 职…

自然语言处理基础知识入门(六) GPT模型详解

GPT 前言一、GPT模型1.1 为什么采用Decoder模块?1.2 为什么不使用Encoder模块? 二、 模型训练2.1 预训练阶段2.2 半监督微调 总结 前言 在之前的章节中,深入探究了预训练ELMo模型的架构与实现原理。通过采用双向LSTM架构在大规模文本数据上进…

C++匿名对象

struct:结构体内默认访问权限:public公共->哪里都能用 class:结构体内默认访问权限:private私有->只能在类里使用 简单版本: class SV { public:SV(int dt 520):_data1(dt){};int R_num(){return _data1;}priv…

易语言本地IP一键切换程序(附带源码)

易语言本地IP一键切换程序 效果图部分源码源码领取下期更新预报 效果图 部分源码 .判断开始 (单选框1.选中 = 真)标签5.标题 = #换行符 + “正在切换IP.”.如果真 (运行 (“netsh interface ip set address ” + #引号 &#xff…

yxc图示“链式前向星”核心操作

【知识点:链式前向星】 ● 大佬 yxc 指出“链式前向星”就是“多单链表”,并基于“头插法”给出了所涉及到的 e[]、ne[]、h[] 等数组的独特解释,更易理解。其中:h[a]:存储单链表表头结点 a 的编号e[idx]:存…

vue-el-steps 使用1(上一步、下一步)

vue代码 <template> <div class"app-container"> <el-steps :active"active" finish-status"success" simple style"margin-top: 20px"> <el-step title"选择分类"></el-step> <el-step t…

Linux实验报告(一)——Linux系统安装与简单配置

目录 一、实验名称&#xff1a; 二、仪器、设备&#xff1a; 三、参考资料&#xff1a; 四、实验目的&#xff1a; 五、实验内容&#xff08;步骤&#xff09;&#xff1a; 六、实验数据&#xff08;程序&#xff09;记录&#xff1a; 七、实验结果分析&#xff1a; 八、…

Keras深度学习框架实战(2):估计模型训练所需的样本量

1、模型训练样本量评估概述 1.1 样本量评估的意义 预估模型需要的样本量对于机器学习项目的成功至关重要&#xff0c;以下是几个主要原因&#xff1a; 防止过拟合与欠拟合&#xff1a; 过拟合&#xff1a;当模型在训练数据上表现极好&#xff0c;但在未见过的测试数据上表现糟…

低代码平台:教育机构数字化转型的技术新引擎

在数字化浪潮汹涌而来的今天&#xff0c;教育行业正迎来前所未有的变革。随着技术的不断进步和教育理念的更新&#xff0c;越来越多的教育机构开始意识到数字化转型的重要性。而在这场转型的浪潮中&#xff0c;低代码平台以其独特的优势&#xff0c;正成为教育机构实现数字化转…

2024年Kubernetes管理的发展趋势及预测

Kubernetes管理的概念 Kubernetes管理是指用于监督使用Kubernetes的跨机器集群的容器化应用程序的部署、扩展和操作的过程和工具。这个编排平台自动化了部署、管理和扩展容器化应用程序的许多方面&#xff0c;但它也引入了配置、网络、安全性和资源管理方面的复杂性。 有效的K…

jmeter常用的断言

包括&#xff08;Contains&#xff09;&#xff1a;响应内容包括需要匹配的内容即代表响应成功&#xff0c;支持正则表达式 匹配&#xff08;Matches&#xff09;&#xff1a;响应内容要完全匹配需要匹配的内容即代表响应成功&#xff0c;大小写不敏感&#xff0c;支持正则表达…

keepalived安装文档

目录 1、安装环境 2、安装keepalived 2.1 上传keepalived安装文件 2.2 解压 2.3 安装keepalived 2.4 加入开机启动&#xff1a; 2.5 配置日志文件 2.6 打开防火墙的通讯地址 1、安装环境 su - root yum -y install kernel-devel* yum -y install openssl-* yum -y …

黑马一站制造数仓实战2

问题 DG连接问题 原理&#xff1a;JDBC&#xff1a;用Java代码连接数据库 Hive/SparkSQL&#xff1a;端口有区别 可以为同一个端口&#xff0c;只要不在同一台机器 项目&#xff1a;一台机器 HiveServer&#xff1a;10000 hiveserver.port 10000 SparkSQL&#xff1a;10001…

数据库(13)——DQL分组查询

语法 SELECT 字段列表 FROM 表名 [WHERE 条件] GROUP BY 分组字段名 [HAVING 分组后过滤条件] 示例 原始表&#xff1a; 根据性别分组并统计人数 select sex,count(*) from information group by sex; 根据性别分组&#xff0c;并求年龄的平均值&#xff1a; 查询年龄大于1…

强大的开源API接口可视化管理平台-YApi

&#x1f525; 交流讨论&#xff1a;欢迎加入我们一起学习&#xff01; &#x1f525; 资源分享&#xff1a;耗时200小时精选的「软件测试」资料包 &#x1f525; 教程推荐&#xff1a;火遍全网的《软件测试》教程 &#x1f4e2;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1…

AE 2021下载:After Effects 2021 for Mac/win 直装版

Adobe After Effects 2021 是一款由 Adobe 公司推出的专业影视后期制作软件&#xff0c;广泛应用于电影、电视、动画和广告等领域。它提供了强大的视觉效果和动画制作工具&#xff0c;可以帮助用户创造出令人惊艳的视觉效果和动态图形。 After Effects 2021 软件支持多种视频格…