/ WHOJ / 题库 /

回文串(文件IO)

回文串(文件IO)

题目描述

给一个完全由小写字母组成的长度为 \(n\) 的字符串,按下列要求把它改成回文串。先给定游标位置为 \(p(1≤p≤n)\),只允许使用四个方向键:上、下、左、右; 规则是:当使用左右键时,改变游标位置(字符串是环形的,即游标在左端时, 可以用左键,移动 \(1\) 格到最右端;而游标在右端时,可以用右键移动 \(1\) 格到最左端);当使用上下键时,改变游标位置上的字符,每按 \(1\) 次,将游标位置上的字符变成其后(前)一个字母(小字字母也是环形的,即字母 \(a\) 按 \(1\) 次可以变成字母 \(b\),也可以变成字母 \(z\))。求最少步数。

格式

输入格式

第一行为正整数 \(t(≤5)\),表示数据组数;每组数据中,第一行为正整数 \(n(≤ 10^5)\) 和 \(p\),表示字符串长度和游标起始位置;第二行为一个长度为 \(n\) 的小写字母串。

输出格式

对于每组数据,输出最少的步数。

样例1

输入样例1

1
8 3
aeabcaez

输出样例1

6

样例解释

变化的 \(6\) 步:\(\texttt{aeabcaez -> aeabcaez -> aeaccaez -> aeaccaez -> aeaccaez-> aeaccaez -> zeaccaez}\)。

来源

地址:芜湖市二十七中电脑班刷题课
作者:汪老师
模拟赛\(T2\)

文件IO

freopen("palind.in","r",stdin);
freopen("palind.out","w",stdout);