#include<iostream>
#include<cstdio>
#include<cstring>
#include <stdio.h>
#include <iostream>
#include <cstdlib>
#include<math.h>
#include<algorithm>
#include<string.h>
using namespace std;
int main (){
char a[1000];
cin>>a;
int i,j,ti,tj,ni,nj,sum;
i=0;
sum=0;
j=(int)strlen(a) -1;
while(i<=j){
//第一種情形:前後相等,則向中間靠攏
if(a[i]==a[j]){
i++;
j--;
}
//第二種情形,前後不相等,則就需要找一個最小的移動距離值
else{
//每次對資料進行更新、重新賦值
ti=i;
tj=j;
//以右邊j為標準,移動左邊元素
while((a[ti]!=a[j])&&ti<j){
ti++;
}
//以左邊i為標準,移動右邊元素
while((a[i]!=a[tj])&&tj>=i){
tj--;
}
//找 i右移、j左移中最小的距離
ni=ti-i;
nj=j-tj;
if(nj>ni){
sum=sum+ni;
i=ti; //將i設定為新起點
}
else{
sum=sum+nj;
j=tj; //將j設定為新起點
}
}
}
cout<<sum<<endl;
return 0;
}
複製程式碼
密碼脫落——藍橋杯
相關文章
- 藍橋杯 排序排序
- 【每週例題】藍橋杯 C++ 雞哥的奇特密碼C++密碼
- 藍橋杯-N皇后
- 藍橋杯真題
- 藍橋杯年號字串字串
- 藍橋杯-帶分數
- 藍橋杯-翻硬幣
- 藍橋杯-螞蟻感冒
- 藍橋杯 計算方程
- 藍橋杯-座次問題
- 藍橋杯-長草(BFS)
- 藍橋杯-日期問題
- 藍橋杯-班級活動
- 藍橋杯——查詢的妙趣
- 藍橋杯-串的處理
- 藍橋杯-回形巢狀巢狀
- 藍橋杯-分巧克力
- 藍橋杯-k倍區間
- 藍橋杯學習路線
- 藍橋杯javaB組備賽Java
- 太陽(藍橋杯14屆)
- 藍橋杯-走迷宮(BFS)
- 藍橋杯-地宮取寶
- 藍橋杯-波動數列
- 藍橋杯-日誌統計
- 藍橋杯-合併數列
- 藍橋杯-矩陣翻硬幣矩陣
- 藍橋杯—演算法訓練演算法
- 藍橋杯--演算法訓練演算法
- 藍橋杯大賽——驅動程式
- 藍橋杯 分巧克力(Java)Java
- 藍橋杯-買不到的數目
- 藍橋杯4-R格式-2
- 藍橋杯-axf檔案生成01
- 藍橋杯模板(三)python組Python
- 藍橋杯模板(二)python組Python
- 藍橋杯,推導部分和
- 藍橋杯例題-快速分揀