Leetcode Contest 112

Leetcode Contest 112

屏幕快照 2018-11-26 下午12.01.39.png

周日翘课,参加了一下比赛。这还是第一次参加实时的比赛。。赛中被卡第三题,真是太囧了。
首先是比赛的时候,没理解题意。之后样例的输出更新了,然后开始进入不断卡题的状态。。。

Validate Stack Sequences

151 / 151 test cases passed.
Status: Accepted
Runtime: 4 ms

虽然是第2题,但题意比较简单。开场11分钟就先过了这题。
这里我用栈模拟push和pop操作,当pop操作不可取时,则尝试push操作。直到pop操作非法。

Bag of Tokens

147 / 147 test cases passed.
Status: Accepted
Runtime: 4 ms

一开始以为是DP,写了一半。发现可能可以用贪心水过去。贪心策略:

  1. face up. 优先开费Power少的Token,攒point
  2. face down. 直到power值不够用时,用point开最大的Token,攒power

Minimum Increment to Make Array Unique

59 / 59 test cases passed.
Status: Accepted
Runtime: 68 ms

开赛的第一题,读题的时候眉头一皱。。有点思路,但没有把握就放到第三题来做。
因为一次操作是选择一个元素,增加1,所以结果必然是递增的。差不多也是贪心策略,从当前最小值开始枚举最合适的值,使其唯一且操作次数最少。

Most Stones Removed with Same Row or Column

68 / 68 test cases passed.
Status: Accepted
Runtime: 1804 ms

比赛的时候,前三题用了41分钟。。还剩49分钟。理论上是可以完成比赛的。。
结果卡题了。。

一开始是模拟移除,10000*10000 的矩阵,遍历stones枚举是否可以移除。提交了两次之后发现逻辑不对:模拟移除的一行或一列至少会保留一块石头,但实际上最多移除是可以不用保留的。

最后理解题意要求是:同行或同列的石头可以聚合为一块石头。使用并查集或 搜索遍历即可。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,033评论 3 119
  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 12,793评论 0 33
  • 一、统计学基本概念 (一)总体 研究对象的总合 例:研究浙江温州地区小学教师的职业幸福感,研究的总体是温州小学教师...
    项丹丹阅读 1,026评论 0 0
  • 从知道你在妈妈肚子里的第一天起,我就决定,今生要用尽我的所有力量,守护着你。并且,我要让全世界都知道,我爱...
    晓雪Eileen阅读 797评论 2 1
  • 轻闭双眼 我不识尘世的喧哗之声 不理红尘纷纷扰扰之音 我眼前一片宁静 莲正在潜心膜拜 屏气聆听观音心咒 心若冰清 ...
    Angel李子汐阅读 1,950评论 9 20