
Tianchi周赛
文章平均质量分 92
lizju
求关注
展开
-
[C++] vector<int> vs. int[]
背景 vector<int>是可以改变大小的。 int a[100]是指定大小为100的, 而且必须的声明的时候给出大小。 今天, 做了阿里周赛的第一题, 一直超时,赛后才知道是这个原因。写了个简单的对比代码, 计算了时间, 在知道数据范围的时候, int []来初始化, 能提高效率。 有兴趣的话, 可以自己试一下。 题目 描述 给出一个只含有小写字母的字符串的集合以及一个目标串(target),输出所有可以经过不多于 k 次操作得到目标字符串的字符串。 你可以对字符串进行一下的3种操作:原创 2020-09-26 15:28:22 · 765 阅读 · 0 评论 -
云栖大会限时抢答赛
P1: 和至少为 K 的最短子数组 Leetcode 862 原题一点没改。 P2: 滑动拼图 Leetcode 773 2×32\times32×3改成了3×33\times33×3。 原本可以直接DFS或者A-start搜索,但是,现在会T,终止状态也不好用了。 用优先队列去维护, 计算和最终状态的差值,相同step的情况下, 优先选择差距小的。 可以在优化一些, 排除一些。 import heapq import collections class Solution: """ @par原创 2020-09-19 13:49:54 · 1159 阅读 · 0 评论 -
[Python3] 超级码力在线编程大赛初赛 第3场 题解
P1 最大公倍数 描述 小栖有一个区间[a,b][a, b][a,b],他准备从中取三个数,他想知道如何取才能使得它们的最小公倍数最大 请直接告诉小栖最小公倍数是多少。 1<=a<b<=50001<=a<b<=50001<=a<b<=5000 b−a>=2b-a>=2b−a>=2 解: 保留最大的两个元素, 然后遍历剩下的元素找到最小公倍数的最大值。 class Solution: """ @param a: Lef原创 2020-09-07 07:57:57 · 181 阅读 · 0 评论 -
[Python3] 超级码力在线编程大赛初赛 第2场 题解
P1 三角魔法 描述 小栖必须在一个三角形中才能施展魔法,现在他知道自己的坐标和三个点的坐标,他想知道他能否施展魔法 点在边上也属于三角形内 −109<=x,y<=109-10^{9}<=x, y<=10^{9}−109<=x,y<=109 解: 判断是否共线 判断是否在三角形内 补充知识(好久之前学的,早忘了): 判断是否共线 对于三个点(x0,y0)(x0, y0)(x0,y0) ,(x1,y1)(x1, y1)(x1,y1) ,(x2,y2)(x2, y原创 2020-08-31 08:16:05 · 7239 阅读 · 0 评论 -
[Python3] 超级码力在线编程大赛初赛 第1场题解
P1 树木规划 描述 在一条直的马路上,有 nnn棵树,每棵树有一个坐标,代表它们距离马路起点的距离。 如果每相邻的两棵树之间的间隔不小于 ddd,那么我们认为这些树是美观的。 请计算出最少移除多少棵树,可以让这些树变得美观。 树木的棵树为 nnn,1≤n≤1051 \leq n \leq 10^{5}1≤n≤105。 树木的坐标用 treestreestrees表示,0≤0 \leq0≤ trees i≤109_{i} \leq 10^{9}i≤109。 最小美观间隔为 ddd,1≤d≤10∘1 \le原创 2020-08-29 12:47:56 · 5428 阅读 · 0 评论 -
[阿里天池] 每周限时赛(内测版) 第3场题解
P1 移动的圆 不要忘记考虑∣Ra−Rb∣<=d|R_a-R_b| <= d∣Ra−Rb∣<=d。 解法有三种: 2.1 一般情况下, lintcode测试集很弱,可以暴力的网格搜。 2.2 数学解, 求切点。判断是否在线段上 2.3 三分法求极值。 是不是觉得我很厉害,想了这么多方法。恩,比赛的时候我确实想到了,但是忘记了第一点,于是wa了半天, 最后也没过。 第一题,绝对是最难的。 class Solution: """ @param position: the原创 2020-08-16 16:10:05 · 6572 阅读 · 0 评论