猿辅导后台开发笔试-第一题
楼主是个菜鸡,三道笔试题目一个都没通过。
交卷后仔细调试了第一题,字符压缩的问题。代码如下,
// 2019.8.4
#include<bits/stdc++.h>
using namespace std;
int main(){
int c;
cin >> c;
string s;
while(c--){
cin >> s;
string ans;
string v;
int i = 0;
for(;i < s.size();){
if(s[i] == '(' || (s[i] >= 'A' && s[i] <= 'Z')) {
v += s[i++];
} else if(s[i] == ')') {
string t;
while(v.back() != '(') {
t += v.back();
v.pop_back();
}
v.pop_back();
reverse(t.begin(), t.end());
// cout << t<< endl;
string num;
i++;
while(s[i] == '0') i++;
while(s[i] >= '0' && s[i] <= '9') {
num += s[i++];
}
int _num = stoi(num);
string tt;
while(_num) {
tt += t;
_num--;
}
v += tt;
} else {
string t;
t = v.back();
v.pop_back();
string num;
while(s[i] == '0') i++;
while(s[i] >= '0' && s[i] <= '9') {
num += s[i++];
}
int _num = stoi(num);
string tt;
while(_num) {
tt += t;
_num--;
}
v += tt;
}
// cout << v << endl;
}
cout << v << endl;
}
return 0;
}
#猿辅导##笔试题目##春招##题解##秋招#
查看21道真题和解析