test題目 電話號碼分身

2021-09-02 05:17:10 字數 2522 閱讀 4449

題目描述

繼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

思路: 找"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"中的特徵數,第一次查詢:"zero"中的z,"two"中的w, "four"中的u, "six"中的x, "eight"中的g。每找到乙個就在字串中刪除當前數字所有字母,這樣第二批就可以查詢:"one"中的o, "three"中的t, "five"中的f,  "seven"中的s, 最後查詢nine。

#include "atlstr.h"

#include using std::cin;

using std::cout;

using std::string;

cstring numname[10] = ;

#define zerotag numname[0][0] //z

#define twotag numname[2][1] //w

#define fourtag numname[4][2] //u

#define sixtag numname[6][2] //x

#define eighttag numname[8][2] //g

cstring g_first_check[5] = ;

unsigned char g_tag_first_check[5] = ;

unsigned char g_result_first_check[5] = ;

typedef struct

checklevel;

checklevel firstcheck[10] = ,

, ,, ,

, ,, , };

checklevel secondcheck[4] = ,

, , };

int removetag(cstring* txt, checklevel* checklevel, int tagnum)

(*txt).delete(loc, 1);

} return ret;

}int sortnum(cstring *txt, checklevel* checklevel, int numofcheck)

i = 0;

}else

}} return 0;

}int main()

; int total = 1;

int linecount = -1;

cstring txt;

char** buf = null; //動態分配 //char buf[1024]; //指定長度

char ch;

int len = 0;

printf("please input some line:\n");

scanf_s("%d", &total); //%c是字元 %s是字串

if (total > 0)

for (i = 0; i < total; i++)

while (scanf_s("%c", &ch) == 1 && ch != eof && total >= 0)

continue;

} buf[linecount] = (char*)realloc(buf[linecount], sizeof(char)*(len + 2));

buf[linecount][len++] = ch;

buf[linecount][len] = null; //只有以null結尾的char才能強制轉換為cstring

//buf[len++] = ch; //指定長度

} for (i = 0; i < linecount; i++)

while (0);

for (j = 0; j < 10; j++)

}printf("\n");

} system("pause");

return ret;

}

電話號碼分身

時間限制 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 然後隨機打亂這些字母,所生成的字串即為 號碼對應的分身。第一...

電話號碼分身

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