LeetCode Weekly Contest 243
这是对 LeetCode 第243场周赛的简单讲解和评论。
以下会包括对Leetcode周赛 243的每一题的题解,代码,难度分析,题目类型,以及一些个人对这题的看法等,希望读者们喜欢!
💡注意 : 题解并不一定都是最优解(代码以pass 了 LeetCode 的 Oline Judge 为准),文章初衷是给读者们提供一定的想法和问题的解决方案
- [Check if Word Equals Summation of Two Words
- Maximum Value after Insertion
- Process Tasks Using Servers
- Minimum Skips to Arrive at Meeting On Time
前言 : 参加Contest 的好处
- 每周抽点时间去练习和学习新的题目这对于个人的编程能力与问题解决能力都有很大的帮助
- 在规定的时间内解决一定的题目,这和真实的OA (Online Assessment) 或者 Onsite 面试是一样的,可以把它当作一个很好的 Mock 练习机会
- 当你有碰到做不出的题目的时候,你能知道自己的弱项在哪里,然后可以根据这进行加强和练习,比赛是一面给自己的镜子
对本场比赛的一些看法
本场比赛难度相对比较正常,都是比较常规的题目,第三题稍微有点难度需要一点思考
1880. 简单的暴力签到题1881. 一道贪心题目1882. 一道用两个Heap的模拟题目,需要进行一点简单的优化1883.比较难的DP 题目
1880 Check if Word Equals Summation of Two Words
题意:
给三个字串符 a,b,c。把每个字串符转换成数字后,问 a + b 是否等于c对于每一个字符串,字母 a 对应0,b对应1,c对应3。。。
思路:
- 写一个convert 函数把string 转换成数字,check 一下 convert ( a ) + convert ( b ) == convert ( c ) 即可
💡代码:
class Solution {
public boolean isSumEqual(String a, String b, String c) {
return convert(a) + convert(b) == convert(c);
}
public int convert(String s) {
int res = 0;
for (int i = 0; i < s.length(); i++) {
int c = s.charAt(i) - 'a';
res = res * 10 + c;
}
return res;
}
}
空间复杂度和时间复杂度:
- 时间复杂度:O(n)
- 空间复杂度:O(1)