题目: 解答: 我们需要找出给定数组中两个数字之间的最大差值(即,最大利润)。此外,第二个数字(卖出价格)必须大于第一个数字(买入价格)。 形式上,对于每组 i和 j(其中 j >i),我们需要找出 max(prices[j] - prices[i])。 方法一:暴力法 1 class Soluti ...
分类:
编程语言 时间:
2020-05-04 17:18:39
阅读次数:
56
解题 思路 核心是分类讨论 将数转成字符串,便于截取操作;同时,将数转成字符数组,便于替换 根据要求,若要差值最大,需找到最小值,最大值。 注意不能有前导0 14ms 待优化 代码 ...
分类:
其他好文 时间:
2020-05-03 20:11:06
阅读次数:
55
0. 前言 这周五一小长假,祝大家节日愉快 中文版地址:https://leetcode-cn.com/contest/weekly-contest-187/ 英文版地址:https://leetcode.com/contest/weekly-contest-187/ 1. 题解 1.1 5400. ...
分类:
其他好文 时间:
2020-05-03 17:03:10
阅读次数:
86
因为这道题只能买卖一次,所以我们可以用dp的思想去分段,也就是以某个位置i作为分段点 从1-i能找到的最小值和从n-i能找到最大值,答案就是差值,因为两者没有约束。这样可以包含所有情况,虽然要重复。 问题是如何求去,因为本题有环,所以我们不能真的dp求,而dp其实就是dag的最x路,因此我们可以想到 ...
题目: 解法: 方法:递归 算法: 从问题的描述中,可以清楚地了解到,我们需要在给定树的每个结点处找到其坡度,并将所有的坡度相加以获得最终结果。要找出任意结点的坡度,我们需要求出该结点的左子树上所有结点和以及其右子树上全部结点和的差值。 因此,为了找出解决方案,我们使用递归函数 traverse,在 ...
分类:
其他好文 时间:
2020-05-03 14:53:40
阅读次数:
61
题目: 解法: 中序遍历得到一个升序序列,将遍历的结果存在一个数组val中,然后用另一个数组diff存数组val中前后元素的差值,输出其中的最小值。 代码略微繁琐,欢迎提出优化建议。 1 /** 2 * Definition for a binary tree node. 3 * struct Tr ...
分类:
其他好文 时间:
2020-05-03 14:30:33
阅读次数:
57
$CF\ 638\ (Div2)$ $A.$ 给定 $n$ 个数,分别为 $2^1,\ 2^2,\ ...,\ 2^n$,保证 $n$ 是偶数,是否可以将这些数分成两组,使得两组之间数字和的差最小,输出这个差值 注意到 $2^1 + 2^2 +.. + 2^{n 1} = 2^n 1$ 如果一组拿到 ...
分类:
其他好文 时间:
2020-05-02 09:55:41
阅读次数:
259
题目大意 题解 秒了,~~然后因为没开ll调了一个上午顺便叉掉了两份标~~ 把每个点看做(s到其的最短路,t到其的最短路),等同于在坐标系上有一些点,每次把xy轴向上移,贡献为新扫到的点 离散化,设f\[i]\[j]表示先手扫到i,后手扫到j之后的最大差值,设g表示最小差值 然后用前缀和转移一下即可 ...
分类:
其他好文 时间:
2020-05-01 16:58:24
阅读次数:
72
金明今天很不开心,家里购置的二手房就要领钥匙了,房里并没有一间他自己专用的很宽敞的房间。更让他不高兴的是,妈妈昨天对他说:“你需要购买哪些物品,怎么布置,你说了不算(有很大的限制),而且不超过W元钱。”。今天一早金明就开始做预算,但是他想买的东西太多了,肯定会超过妈妈限定的W元。于是,他把每件物品规 ...
分类:
其他好文 时间:
2020-04-30 13:31:37
阅读次数:
61
"Description" 思路 这题的思想有点类似求树的重心。 首先思考一下如果只要求一个点的差值。那么显然,将这个点看作根节点,然后只要dfs一下,将与它连接的所有子树中各个最大差值求个和就是答案。 在dfs的过程中把每个结点的求的值记录下来,那么对于每个结点,下面的最大差值都已经求好了,就剩下 ...
分类:
其他好文 时间:
2020-04-29 23:25:21
阅读次数:
52