美團點評2020校招測試方向筆試題

2021-10-23 11:41:41 字數 1323 閱讀 9878

時間限制:c/c++ 1秒,其他語言2秒

空間限制:c/c++ 256m,其他語言512m

將給定的字串,按照規則刪除字元,輸出刪除後的字串。刪除規則為:相同字元連續,則刪除,如」aaaab」刪除後的字串為」b」 。注:僅是單個字元連續才刪除,如babababa則不能刪除;

輸入描述:

輸入資料有多組,每組一行,僅包含數字和英文本母,不包含轉義等其他特殊字元,輸入資料最大長度為10;

輸出描述:

對於每個測試例項,要求輸出按規則刪除後的資料,每個測試例項的輸出佔一行。如果刪除後有字元,直接輸出刪除後的字元;如果刪除後為空,則輸出」no」

輸入例子1:

aaaaaabbbb

輸出例子1:ano

思路:

第乙個,最後乙個字元與中間字元分開討論

if input_str[i - 1] != input_str[i] and input_str[i + 1] != input_str[i]:

result = result + input_str[i]

即便 i 從1到 len()-1,也只是判斷了第二個字元 到 倒數第二個,第乙個和最後乙個沒有判斷;

while true:

try:

input_str = input()

result = ""

for i in range(len(input_str)):

if len(input_str) == 1:

result = input_str

break

if i == 0:

if input_str[i + 1] != input_str[i]:

result = result + input_str[i]

elif i == len(input_str) - 1:

if input_str[i - 1] != input_str[i]:

result = result + input_str[i]

else:

if input_str[i - 1] != input_str[i] and input_str[i + 1] != input_str[i]:

result = result + input_str[i]

if len(result) == 0:

print("no")

else:

print(result)

except:

break

注意輸入問題

去除 try … except 報錯?

美團點評2020校招系統開發方向筆試題

第七題 主要格式控制 include include include using namespace std int a,b char c intmain 第八題 思路 列舉所有的情況,如果當前這個序列是回文,就ans 最後輸出ans include include include using na...

美團點評校招前端方向筆試題

1.請按順序寫出列印結果,並說明原因。var name global var obj bind window var bar new obj.foo settimeout function 0 console.log bar.name var bar3 bar2 bar bar2.name foo2...

2018美團點評校招 K的倍數

序列中任意個連續的元素組成的子串行被稱為該序列的字串 現在給你乙個序列p和乙個整數k,詢問元素和是k的倍數的子串的最大長度 比如序列,給定的整數k為5,其中滿足條件的子串為 那麼答案就為5,因為最長的子串為 如果滿足條件的子串不存在,就輸出0 輸入 第乙個含乙個整數n,1 n 10 5 第二行包含n...