我們將僅由若干個同一小寫字母構成的字串稱之為簡單串,例如"aaaa"是乙個簡單串,而"abcd"則不是簡單串。現在給你乙個僅由小寫字母組成的字串,你需要用最小的花費,將其轉換成乙個簡單串。 花費的計算規則如下:將a到z這26個小寫字母從左到右排成一排,則每個字母都有左右兩個鄰居,我們認為a的左鄰居是z,z的右鄰居是a。乙個字母只能轉換成其相鄰的字母,轉換的花費為1。乙個字母可以進行多次轉換,例如將a轉換成d,可以進行如下的步驟: a->b->c->d,花費為3。字串的轉換花費為所有字母轉換花費之和。例如將字串"abbbz"轉換成簡單串的最小花費為3,轉換後的結果為"bbbbb"。
第一行乙個整數t
(t≤100
),表示測試資料的組數。 每組測試資料只有一行,為僅含小寫字母的字串,字串長度不超過1000。
對於每一組資料,輸出乙個整數,表示將字串轉換成簡單串的最小花費。
2
abbba
abbac
2
3注意審題是迴圈比較
#include#include#include
#include
#include
#define inf 0x7fffffff
using
namespace
std;
int mins(int a,int b,int
c)int
main()
int number=s.size();
int min=inf;
for(int i=0;i<26;i++)
if(tormin=tor;
}cout}}
return0;
}
BUPT複試專題 尋找變化前01序列 2016
給你乙個01序列,hdlc協議處理的話,如果出現連續的5個1會補1個0。例如1111110,會變成11111010。現在給你乙個經過hdlc處理後的01序列,你需要找到hdlc處理之前的01序列。例如給你11111010 你需要輸出1111110 輸入正整數n,表示n例測試。接著輸入n組資料,每組輸...
字串專題
created on 2019年12月1日 author hp 擷取字串 str2 我是迪迦奧特曼 str3 str2 5 str4 str2 0 len str2 2 print str3,str4 擷取的字串如果不存在,會出現異常,可以用try.except捕捉異常 try str5 str2 ...
字串專題
給定乙個字串,你的任務是計算這個字串中有多少個回文子串。具有不同開始位置或結束位置的子串,即使是由相同的字元組成,也會被視作不同的子串。示例1 輸入 abc 輸出 3 解釋 三個回文子串 a b c 示例 2 輸入 aaa 輸出 6 解釋 6個回文子串 a a a aa aa aaa 解法 1 動態...