百词斩这次题目不是很难,但是时间比较紧张,3道编程题60分钟,接下来放上编程题:
第一题
求数组的可达路径,有点类似于《剑指offer》上机器人运动路径,目测使用动态规划,但是具体怎么做我还没想好,先放着
第二题:
求字符串的最小编辑距离,题目还是很经典,但是时间不够了,没有完全完成,网上类似的题目很多,思路也比较明确,就是动态规划,只是输入输出需要做一些修改。
第三题:
这是唯一一道我完全在规定时间内做完的题目,题目特别像LeetCode上的“count and say”,不是很难,思路就是按照顺序读取字符,在循环中进行计数,这里有两个地方要注意:1、只出现一次的字符不需要标上数量;2、需要用到t0_string函数把数字转化为string类型字符串
代码如下:
1 int main() { 2 string s1, res = ""; 3 cin >> s1; 4 int i = 0, len = s1.size(); 5 while (i < len) 6 { 7 res += s1[i]; 8 int count = 1; 9 while ((i + 1) < len && s1[i] == s1[i + 1]) 10 { 11 count++; 12 i++; 13 } 14 if (count != 1) 15 res += to_string(count); 16 i++; 17 } 18 cout << res << endl; 19 return 0; 20 }