蓝桥杯Python B组练习——完美的代价
一、题目
问题描述
回文串,是一种特殊的字符串,它从左往右读和从右往左读是一样的。小龙龙认为回文串才是完美的。现在给你一个串,它不一定是回文的,请你计算最少的交换次数使得该串变成一个完美的回文串。
交换的定义是:交换两个相邻的字符
例如mamad
第一次交换 ad : mamda
第二次交换 md : madma
第三次交换 ma : madam (回文!完美!)
输入格式
第一行是一个整数N,表示接下来的字符串的长度(N <= 8000)
第二行是一个字符串,长度为N.只包含小写字母
输出格式
如果可能,输出最少的交换次数。
否则输出Impossible
样例输入
5
mamad
样例输出
3
二、思考
如果输入的字符串是奇数,只能有一个字母次数为奇数;如果输入的字符串是偶数,那么字母出现次数必须都为偶数
三、Python代码
n=int(input())
pal = list(input())count=flag=0
m=n-1for i in range(m):for k in range(m,i-1,-1):if k==i:if n%2==0 or flag==1:print("Impossible")exit()flag=1count+=int(n/2)-ielif pal[i]==pal[k]:for j in range(k,m):pal[j],pal[j+1]=pal[j+1],pal[j]count+=1m-=1break
print(count)
运行结果:
相关文章:

蓝桥杯Python B组练习——完美的代价
一、题目 问题描述 回文串,是一种特殊的字符串,它从左往右读和从右往左读是一样的。小龙龙认为回文串才是完美的。现在给你一个串,它不一定是回文的,请你计算最少的交换次数使得该串变成一个完美的回文串。 交换的定义是…...

分布式游戏服务器
1、概念介绍 分布式游戏服务器是一种专门为在线游戏设计的大型系统架构。这种架构通过将游戏服务器分散部署到多台计算机(节点)上,实现了数据的分散存储和计算任务的并行处理。每个节点都负责处理一部分游戏逻辑和玩家请求,通过高…...
idea中常见快捷键及插件操作
1、双击shift【万能】 (1)输入pull,回车可以更新代码 (2)输入commit,回车可以提交代码 (3)输入history,可以查看提交记录 (4)输入break,回车可以查…...

理解树的结构-算法通关村
理解树的结构-算法通关村 1.树的结构 树是一个有n个有限节点组成一个具有层次关系的集合,每个节点有0个或者多个子节点,没有父节点的节点称为根节点,也就是说除了根节点以外每个节点都有父节点,并且有且只有一个。树的种类比较多…...

金融知识分享系列之:支撑阻力
金融知识分享系列之:支撑阻力 一、支撑阻力原理二、支撑阻力作用1.识别市场资金的预期2.作为入场和平仓的重要参考 三、寻找支撑阻力四、延伸思考五、支撑阻力总结 一、支撑阻力原理 支撑阻力核心要素: 锚定效应订单驱动 支撑阻力原理: 市…...

如何使用Excel创建一个物品采购表
在企业的日常运营中,物品采购是一个常见且重要的活动。有效的采购管理不仅可以确保企业及时获得所需物资,还可以控制成本、提高效率。Microsoft Excel是一个功能强大的工具,它可以帮助我们创建和管理物品采购表。本文将详细介绍如何使用Excel…...

容器中的大模型(三)| 利用大语言模型:容器化高效地部署 PDF 解析器实践...
作者:宋文欣,智领云科技联合创始人兼CTO 01 简介 大语言模型(LLMs)正逐渐成为人工智能领域的一颗璀璨明星,它们的强大之处在于能够理解和生成自然语言,为各种应用提供了无限可能。为了让这些模型更好地服务…...
java采集小程序联合航空官方
本文仅限学习研究讨论,切忌做非法乱纪之事 中国联合航空有限公司(以下简称“中国联合航空”)总部位于北京,现为中国东方航空股份有限公司(以下简称“东航”)旗下的全资子公司。中国联合航空成立于1986年12月26日&#…...
【力扣每日一题】lc1793. 好子数组的最大分数(单调栈)
LC1793. 好子数组的最大分数 题目描述 给你一个整数数组 nums (下标从 0 开始)和一个整数 k 。 一个子数组 (i, j) 的 分数 定义为 min(nums[i], nums[i1], ..., nums[j]) * (j - i 1) 。 一个 好 子数组的两个端点下标需要满足 i < k < j 。 请…...

ES的集群节点发现故障排除指南(1)
本文是ES官方文档关于集群节点发现与互联互通的问题排查指南内容。 英文原文(官网) 集群节点发现是首要任务 集群互连,重中之重! 在大多数情况下,发现和选举过程会迅速完成,并且主节点会长时间保持当选状…...

使用html+css制作一个发光立方体特效
使用htmlcss制作一个发光立方体特效 <!DOCTYPE html> <html lang"zh-CN"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>Documen…...

贵州省二级分类土地利用数据(矢量)
贵州省,地处中国西南腹地,地貌属于中国西南部高原山地,境内地势西高东低,自中部向北、东、南三面倾斜,平均海拔在1100米左右。贵州高原山地居多,素有“八山一水一分田”之说。全省地貌可概括分为࿱…...

通过nginx+xray服务搭建及本地配置
一、xray服务配置 下载:https://github.com/XTLS/Xray-core 进入下载界面 这里我选择的是Xray-linux-64.zip 将文件解压到 /usr/local/xray 编辑配置文件/usr/local/xray/config.json uuid可以在v2ray客服端自动生成,也可以在UUID v4 生成器 - KKT…...

第一节 Axure RP产品经理原型进阶学习
第一天 1、认识RP9 Axure RP 9,Axure RP 9是美国 Axure Software Solution公司的旗舰产品, 是一个快速的原型工具,常用于各项网络设计,包括了原型图、线框图等等。 要进行原型设计,将文字性文档转变为互动性的可视画…...
Linux实战笔记(三) 文件压缩
大家好,我是半虹,这篇文章来讲 Linux 系统中常用的文件压缩方式 0、序言 在 Linux 系统中,存在许多打包或压缩文件的工具 这篇文章会对一些常用的工具进行分类整理和介绍 如果只是需要知道怎么对不同格式的文件做解压缩,可以直…...
树形递归模板
详情参考CSDN链接: https://www.cnblogs.com/lidar/p/12972792.html public class Menu {// 菜单idprivate String id;// 菜单名称private String name;// 父菜单idprivate String parentId;// 菜单urlprivate String url;// 菜单图标private String icon;// 菜单顺序private …...
Python实战:Pandas数据合并与重塑
本文将深入探讨Pandas库在数据合并与重塑方面的强大功能。我们将涵盖多种数据合并方法,如merge、join、concat等,以及数据重塑的技巧,如pivot_table、merge_asof等。 一、引言 Pandas是一个强大的Python数据分析库,它提供了丰富…...

如何理解 Linux 命令行参数与环境变量7
一、命令行参数 1.1参数介绍 在写C语言程序时,main函数是否可以带参数呢?------ 是可以的 int argc: 命令行参数的个数char *argv[ ]: 字符指针数组(指向各个命令行参数的字符指针所构成的数组) 我们写一段代码来打印一下看这…...
奥特曼回应GPT5
欢迎再次与大家会面!在积累了大量的信息和趋势后,今天我们将深入了解 Sora、OpenAI 董事会、以及近期与其有关的所有声讨。我们将直接跳入与 OpenAI 首席执行官 Sam Altman 的深度访谈,探讨从 AGI 到 GPT-5 的未来,以及 Sam 对人工…...

QT----给程序添加上任务栏托盘图标和退出
让我们的程序拥有任务栏托盘图标,实现程序后台运行,退出等功能 1、关闭程序保持后台 重写关闭事件,忽略点击窗口关闭 void MainWindow::closeEvent(QCloseEvent *event) {// 隐藏窗口,而不是真正关闭setVisible(false);// 忽略关闭事件&am…...

调用支付宝接口响应40004 SYSTEM_ERROR问题排查
在对接支付宝API的时候,遇到了一些问题,记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...
脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)
一、数据处理与分析实战 (一)实时滤波与参数调整 基础滤波操作 60Hz 工频滤波:勾选界面右侧 “60Hz” 复选框,可有效抑制电网干扰(适用于北美地区,欧洲用户可调整为 50Hz)。 平滑处理&…...
【解密LSTM、GRU如何解决传统RNN梯度消失问题】
解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...
Leetcode 3577. Count the Number of Computer Unlocking Permutations
Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...

对WWDC 2025 Keynote 内容的预测
借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
蓝桥杯 冶炼金属
原题目链接 🔧 冶炼金属转换率推测题解 📜 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V,是一个正整数,表示每 V V V 个普通金属 O O O 可以冶炼出 …...
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问(基础概念问题) 1. 请解释Spring框架的核心容器是什么?它在Spring中起到什么作用? Spring框架的核心容器是IoC容器&#…...
JavaScript基础-API 和 Web API
在学习JavaScript的过程中,理解API(应用程序接口)和Web API的概念及其应用是非常重要的。这些工具极大地扩展了JavaScript的功能,使得开发者能够创建出功能丰富、交互性强的Web应用程序。本文将深入探讨JavaScript中的API与Web AP…...

使用LangGraph和LangSmith构建多智能体人工智能系统
现在,通过组合几个较小的子智能体来创建一个强大的人工智能智能体正成为一种趋势。但这也带来了一些挑战,比如减少幻觉、管理对话流程、在测试期间留意智能体的工作方式、允许人工介入以及评估其性能。你需要进行大量的反复试验。 在这篇博客〔原作者&a…...