随笔分类 -  oj记录

上一页 1 2 3 4 5 6 ··· 15 下一页
没事刷刷oj,总是会对自己有帮助的
摘要:Q:给你一个字符串 s,「k 倍重复项删除操作」将会从 s 中选择 k 个相邻且相等的字母,并删除它们,使被删去的字符串的左侧和右侧连在一起。 你需要对 s 重复进行无限次这样的删除操作,直到无法继续为止。 在执行完所有删除操作后,返回最终得到的字符串。 本题答案保证唯一。 示例 1: 输入:s = 阅读全文
posted @ 2020-08-01 21:34 Shaw_喆宇 阅读(193) 评论(0) 推荐(0)
摘要:Q:给定一个经过编码的字符串,返回它解码后的字符串。 编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。 你可以认为输入字符串总是有效的;输入字符串中没有额外的空格,且输入的方括号总是符合格式要求的。 此外 阅读全文
posted @ 2020-08-01 19:46 Shaw_喆宇 阅读(437) 评论(0) 推荐(0)
摘要:Q:由空地和墙组成的迷宫中有一个球。球可以向上下左右四个方向滚动,但在遇到墙壁前不会停止滚动。当球停下时,可以选择下一个方向。 给定球的起始位置,目的地和迷宫,判断球能否在目的地停下。 迷宫由一个0和1的二维数组表示。 1表示墙壁,0表示空地。你可以假定迷宫的边缘都是墙壁。起始位置和目的地的坐标通过 阅读全文
posted @ 2020-07-30 16:30 Shaw_喆宇 阅读(829) 评论(0) 推荐(0)
摘要:Q:给定一个机票的字符串二维数组 [from, to],子数组中的两个成员分别表示飞机出发和降落的机场地点,对该行程进行重新规划排序。所有这些机票都属于一个从JFK(肯尼迪国际机场)出发的先生,所以该行程必须从 JFK 出发。 说明: 如果存在多种有效的行程,你可以按字符自然排序返回最小的行程组合。 阅读全文
posted @ 2020-07-26 13:37 Shaw_喆宇 阅读(270) 评论(0) 推荐(0)
摘要:Q:给定一个整数矩阵,找出最长递增路径的长度。对于每个单元格,你可以往上,下,左,右四个方向移动。 你不能在对角线方向上移动或移动到边界外(即不允许环绕)。 示例 1: 输入: nums = [ [9,9,4], [6,6,8], [2,1,1] ] 输出: 4 解释: 最长递增路径为 [1, 2, 阅读全文
posted @ 2020-07-26 11:56 Shaw_喆宇 阅读(344) 评论(0) 推荐(0)
摘要:Q:在一个小镇里,按从 1 到 N 标记了 N 个人。传言称,这些人中有一个是小镇上的秘密法官。 如果小镇的法官真的存在,那么: 小镇的法官不相信任何人。 每个人(除了小镇法官外)都信任小镇的法官。 只有一个人同时满足属性 1 和属性 2 。 给定数组 trust,该数组由信任对 trust[i] 阅读全文
posted @ 2020-07-19 15:55 Shaw_喆宇 阅读(283) 评论(0) 推荐(0)
摘要:Q:给定一个整数 n,生成所有由 1 ... n 为节点所组成的 二叉搜索树 。 A:递归解决这个问题,分别把每个点作为root,然后把子树连上去。 public List<TreeNode> generateTrees(int n) { if (n == 0) return new LinkedL 阅读全文
posted @ 2020-07-19 15:01 Shaw_喆宇 阅读(126) 评论(0) 推荐(0)
摘要:1. Wiggle Walk Q:在R*C的正方形当中有一个位于(S_R, S_C)机器人,给机器人N个上下左右(NSWE)移动一格的命令,如果机器人移动到之前到达过的位置,则继续朝原方向移动一格(保证机器人不会移出正方形)。按命令最后终点在哪里。 A:四个解法: 暴力模拟 使用HashMap优化, 阅读全文
posted @ 2020-07-12 21:04 Shaw_喆宇 阅读(156) 评论(0) 推荐(0)
摘要:1. Big Buttons Q:构造长度为N的字符串,每一位可以是R或者B。给了P个前缀,构造的字符串不可包含这P个前缀。(如果不是作为前缀出现则可以。)问有多少种构造方式。 A:先计算总共有多少个($2^N$),然后减掉前缀后的个数。 有些坑: 1.prefix A可能是多个prefix的前缀, 阅读全文
posted @ 2020-07-12 20:46 Shaw_喆宇 阅读(125) 评论(0) 推荐(0)
摘要:1. Product Triplets Q:给定一组整数数组,找出满足a*b=c的三元组的个数。 A: 特殊值0,1特殊对待,两个或三个0 数组排序后,如果x<y<z且三者都非零,一定有A[z]>A,A[z]>A[y],所以只要枚举x,y,在[y+1,N]的范围内寻找A*A[y]是否存在即可。 2. 阅读全文
posted @ 2020-07-12 20:33 Shaw_喆宇 阅读(119) 评论(0) 推荐(0)
摘要:1. Common Anagrams Q:两个字符串A,B,问有多少对子串是字母异序词。 A: 枚举所有子串,然后对比。 改进:添加一个map 再改进:桶排序,算每个字符出现的次数 再再改进:B[i,j]是B[i,j-1]出现次数+j对应字符数目+1 2. Specializing Villages 阅读全文
posted @ 2020-07-07 21:34 Shaw_喆宇 阅读(147) 评论(0) 推荐(0)
摘要:1. Yogurt Q:给定N份酸奶,每份都有一个截止日期A[i],过期的酸奶 不能喝。每天最多只能喝K个。问什么策略可以喝到最多份酸奶。 A: 想法:先sort截止日期,然后往后遍历。走一个判断一个。复杂度是O(nlogn) 改进:创建一个数组,数组内是当天过期的酸奶量,第一天过期放第一天,第二天 阅读全文
posted @ 2020-07-07 21:12 Shaw_喆宇 阅读(160) 评论(0) 推荐(0)
摘要:1. Candies Q:n个糖果、每个糖果的甜度是$S_i(i from 1 to n)$,可能为负;求连续子集的糖果总甜度最大,但是总甜度不可超过D,并且子集中的奇数甜度个数不能超过O A: 滑动窗口 给定n(n<=5e5)个数,求最大区间和使得区间内的奇数个数不超过o且区间和不超过d,对于小数 阅读全文
posted @ 2020-07-04 22:39 Shaw_喆宇 阅读(129) 评论(0) 推荐(0)
摘要:1. Planet Distance Q:有很多星球,在每个星期之间会有管道,当这些管道和星球形成环的时候,这些形成环的星球上会有一些礼物,这些形成环的星球离礼物的距离为0,其它星球离礼物的距离,是到形成环的所有星球中距离最短的那条,求所有星球到礼物的距离。 A:有环无向图上的所有节点距离环的最短距 阅读全文
posted @ 2020-07-04 22:23 Shaw_喆宇 阅读(154) 评论(0) 推荐(0)
摘要:1. No Nine Q: 求 [L, R] 的合法数字个数,合法数字是不能包含9也不能被9整除。L和R一定合法。 A: 自己的想法:区间内多少含有9的数字,多少9的倍数,多少又包含9又是9的倍数,分别计算出来。区间内如果不好求,就写一个函数,是[1,x]内的数字个数,然后[1,R]-[1,L] 官 阅读全文
posted @ 2020-07-04 18:18 Shaw_喆宇 阅读(113) 评论(0) 推荐(0)
摘要:1. Even Digits Q:给一个数,每次可以加一或减一,求最少操作次数,使得最后这个数的十进制表示中每个位都是偶数。 数据范围: $1≤T≤105$, $1≤N≤10{16}$ Sample: Input 4 42 11 1 2018 Output Case #1: 0 Case #2: 3 阅读全文
posted @ 2020-07-04 16:42 Shaw_喆宇 阅读(167) 评论(0) 推荐(0)
摘要:Q:在 N * N 的网格上,我们放置一些 1 * 1 * 1 的立方体。每个值 v = grid[i][j] 表示 v 个正方体叠放在对应单元格 (i, j) 上。请你返回最终形体的表面积。 示例 1: 输入:[[2]] 输出:10 示例 2: 输入:[[1,2],[3,4]] 输出:34 示例 阅读全文
posted @ 2020-06-29 11:17 Shaw_喆宇 阅读(120) 评论(0) 推荐(0)
摘要:Q:一个有名的按摩师会收到源源不断的预约请求,每个预约都可以选择接或不接。在每次预约服务之间要有休息时间,因此她不能接受相邻的预约。给定一个预约请求序列,替按摩师找到最优的预约集合(总预约时间最长),返回总的分钟数。 示例 1: 输入: [1,2,3,1] 输出: 4 解释: 选择 1 号预约和 3 阅读全文
posted @ 2020-06-29 10:28 Shaw_喆宇 阅读(243) 评论(0) 推荐(0)
摘要:Q:给定整数数组 A,每次 move 操作将会选择任意 A[i],并将其递增 1。返回使 A 中的每个值都是唯一的最少操作次数。 示例 1: 输入:[1,2,2] 输出:1 解释:经过一次 move 操作,数组将变为 [1, 2, 3]。 示例 2: 输入:[3,2,1,2,1,7] 输出:6 解释 阅读全文
posted @ 2020-06-24 11:34 Shaw_喆宇 阅读(163) 评论(0) 推荐(0)
摘要:Q:给定两个单词(beginWord 和 endWord)和一个字典 wordList,找出所有从 beginWord 到 endWord 的最短转换序列。转换需遵循如下规则: 每次转换只能改变一个字母。 转换后得到的单词必须是字典中的单词。 说明: 如果不存在这样的转换序列,返回一个空列表。 所有 阅读全文
posted @ 2020-06-22 20:17 Shaw_喆宇 阅读(261) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 ··· 15 下一页