程式設計題的解析字串
5
a11b
(aa)2a
((a2b)2)2g
(yuanfudao)2jiayou
a2bc4d2
輸入如上,按照規則解析字串
研究了下用棧寫出來了,其實不難,加上筆試時間,和複雜的邊界條件,程式就很難跑的完全通。
如果有好的遞迴寫法,歡迎分享下
public class main
public static string decodestring(string s)
stack.pop();
string num = "";
int w = 0;
while (s.charat(i + 1) >= '0' && s.charat(i + 1) <= '9')
i = i - w + 1;
int repeat = integer.parseint(num);
string ret = "";
for (int j = 0; j < repeat; j++)
stack.push(ret);
} else if (i + 1 > s.length() - 1 || s.charat(i + 1) < '0' || s.charat(i + 1) > '9') else
int nums = integer.parseint(num);
string ret = "";
for (int k = 0; k < nums; k++)
stack.push(ret);
if (i + 1 >= s.length()) }}
string result = "";
while (!stack.isempty())
system.out.println(result);
return result;
}}
輸出如下
aaaaaaaaaaab
aaaaa
aabaabaabaabg
yuanfudaoyuanfudaojiayou
aabccccdd
猿輔導 2023年 校招提前批筆試
就是讓你解析乙個串,這樣子 aa bb 2 3 aabbbbaabbbbaabbbb 空間的話超過的話,我其實是可以用vector來優化的.233 當場沒做出來 哭了 include using namespace std int main else if s i st.pop st.push an...
2019網易秋招筆試 程式設計題 塔
小易有一些立方體,每個立方體的邊長為1,他用這些立方體搭了一些塔。現在小易定義 這些塔的不穩定值為它們之中最高的塔與最低的塔的高度差。小易想讓這些塔盡量穩定,所以他進行了如下操作 每次從某座塔上取下一塊立方體,並把它放到另一座塔上。注意,小易不會把立方體放到它原本的那座塔上,因為他認為這樣毫無意義。...
騰訊2016秋招筆試程式設計題
有乙個由很多木棒構成的集合,每個木棒有對應的長度,請問能否用集合中的這些木棒以某個順序首尾相連構成乙個面積大於 0 的簡單多邊形且所有木棒都要用上,簡單多邊形即不會自交的多邊形。初始集合是空的,有兩種操作,要麼給集合新增乙個長度為 l 的木棒,要麼刪去集合中已經有的某個木棒。每次操作結束後你都需要告...