c 程式設計題 電話號碼分身

2021-08-21 20:15:48 字數 1546 閱讀 9085

這是昨天寫的一道題,太晚了沒有做完就沒發出來。

繼miui8推出手機分身功能之後,miui9計畫推出乙個**號碼分身的功能:首先將**號碼中的每個數字加上8取個位,然後使用對應的大寫字母代替 ("zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"), 然後隨機打亂這些字母,所生成的字串即為**號碼對應的分身。

第一行是乙個整數t(1 ≤ t ≤ 100)表示測試樣例數;接下來t行,每行給定乙個分身後的**號碼的分身(長度在3到10000之間)。
輸出t行,分別對應輸入中每行字串對應的分身前的最小**號碼(允許前導0)。
示例1

4

eight

zerotwoone

ohwetenrteo

ohewtiegthenrteo

0

234345

0345

題目主要分析不同數字英文表示的特殊性,難度不大。

#include #include using namespace std;

int main() ;

int i,s;

scanf("%d",&t);

while(t--)

b[1] = b[1] - b[0] - b[2] - b[4];//1對應3

b[3] = b[3] - b[8];//3對應5

b[5] = b[5] - b[4];//5對應7

b[7] = b[7] - b[6];//7對應9

b[9] = b[9] - b[8] - b[5]- b[6];//9對應1

while(b[8]--)

while(b[9]--)

while(b[0]--)

while(b[1]--)

while(b[2]--)

while(b[3]--)

while(b[4]--)

while(b[5]--)

while(b[6]--)

while(b[7]--)

printf("\n");

}}

這是最後編譯成功的**。

我昨天的**如下,思路大概一致,但是好像輸入上出了問題,今天沒心情看了,找時間再來看一下。

#include#includeusing namespace std;

int main(void)

while(arr[i][9]>0)

while(arr[i][8]>0)

while(arr[i][7]>0)

while(arr[i][0]>0)

while(arr[i][1]>0)

while(arr[i][4]>0)

while(arr[i][2]>0)

while(arr[i][5]>0)

while(arr[i][3]>0)

while(arr[i][6]>0)

cout<}

}

程式設計題 電話號碼分身

題目描述 首先將 號碼中的每個數字加上8然後取個位,然後使用對應的大寫字母代替 one two three four five six seven eight nine 然後隨機打亂這些字母,所生產的字串即為 號碼對應的分身。輸入 第一行為乙個整數t,接下來t行,每行給定乙個分身後的 號碼 輸出 輸...

電話號碼分身

時間限制 1秒 空間限制 32768k 繼miui8推出手機分身功能之後,miui9計畫推出乙個 號碼分身的功能 首先將 號碼中的每個數字加上8取個位,然後使用對應的大寫字母代替 zero one two three four five six seven eight nine 然後隨機打亂這些字母...

電話號碼分身

繼miui8推出手機分身功能之後,miui9計畫推出乙個 號碼分身的功能 首先將 號碼中的每個數字加上8取個位,然後使用對應的大寫字母代替 zero one two three four five six seven eight nine 然後隨機打亂這些字母,所生成的字串即為 號碼對應的分身。第一...