字母圓環表問題

2021-10-03 19:03:55 字數 1157 閱讀 4008

題意:

咕咕東是個貪玩的孩子,有一天,他從上古遺跡中得到了乙個神奇的圓環。這個圓環由字母表組成首尾相接的環,環上有乙個指標,最初指向字母a。咕咕東每次可以順時針或者逆時針旋轉一格。例如,a順時針旋轉到z,逆時針旋轉到b。咕咕東手裡有乙個字串,但是他太笨了,所以他來請求你的幫助,問最少需要轉多少次。

輸入:

輸入只有一行,是乙個字串。

輸出:

輸出最少要轉的次數。

輸入樣例:

zeus

輸出樣例:

18解題思路:

是一道很簡單的貪心問題,貪心策略就是選擇最近的乙個字母。需要寫兩個函式便於使用,char_to_int將字元對應到整數,dis求出兩個字母的距離(取最短的乙個)。依次讀入每乙個字母,先轉化為整數d,再求出到目前字母cur的距離,ans的增量就是這個距離,對目前字母cur進行更新。最後輸出答案即可。

注意事項:

1、題目沒有說明讀入到eof再結束的就是單組資料,此時不需要使用~scanf("%c",&c)或scanf("%c",&c)!=eof的方式,使用while (scanf("%c",&c)&&c!=』\n』)讀入。

總結:

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

using

namespace std;

int char_to_int (

char x)

intdis

(int x,

int y)

char c;

int ans=0;

intmain()

cout

}

約瑟夫圓環問題

如下 include include include int main 讓陣列迴圈起來 person n 1 編號為n的下乙個人的編號是1 node 1 while node person node count printf d person node 輸出被殺的人編號 person node pe...

《字母表中對稱位置的字母》

問題描述 判別從鍵盤輸入的乙個字元是不是英文本母 包括大小寫 如果是字母,則輸出它在字母表中對稱位置的字母。例如輸入a 則輸出z,輸入b 則輸出y。若該字元不是英文本母,則報告顯示 it is not a letter.字樣。輸入形式 從鍵盤輸入的乙個字元。輸出形式 如果該輸入字元是英文本母,則輸出...

Python字母轉換問題。

題目要求 你得到乙個可能混合大小寫字母的字串,你的任務是把該字串轉為僅使用小寫字母或者大寫字母,為了盡可能少的改變 如果字串包含的大字母數小於等於小寫字母數,則把字串轉為小寫。如果大寫的數目大於小寫字母數,則把字串轉為全大寫。比如 solve code code solve code code 簡單...