题目链接 #解题思路 在最优解的情况下,一堆纸牌肯定是最多只能经过一次的,这样,我们不需要贪心的如何移动才能最优,只需在一堆纸牌只经过一次的情况下需要传递的纸牌数。设$x_i$为第$i$堆纸牌需要传递的牌数,然后这里我们以最左边的一堆做起点,那么对于第$i$堆,它所需要移动的牌数就是前面移动过来的牌 ...
分类:
其他好文 时间:
2020-06-15 13:40:02
阅读次数:
43
一、题目 给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有满足条件且不重复的三元组。 注意:答案中不可以包含重复的三元组。 示例: 给定数组 nums = [-1, 0, 1, 2, -1, -4], 满足要 ...
分类:
编程语言 时间:
2020-06-13 23:07:15
阅读次数:
88
题目链接 #解题思路 状压dp入门题,也是经典的tsp问题。因为tsp问题是np完全问题,所以我们只能考虑通过大量枚举来做。需要注意的一点是,如果走过了1->2->3这样一条路径,要到达第4个点的话,并不一定需要从3出发,只要从前面走过的点出发即可,所以我们并不需要把所以的点按前后顺序走出来的情况全 ...
题目来源于力扣(LeetCode) 一、题目 832. 翻转图像 题目相关标签:数组 提示: 1 <= A.length = A[0].length <= 20 0 <= A[i][j] <= 1 二、解题思路 存在规律:先翻转再反转,而二维数组中的元素只有 0 和 1 两种 通过左右双指针来遍历矩 ...
分类:
其他好文 时间:
2020-06-11 21:37:34
阅读次数:
61
[GKCTF2020]CheckIN 解题思路 打开直接是源码: <title>Check_In</title> <?php highlight_file(__FILE__); class ClassName { public $code = null; public $decode = null; ...
分类:
其他好文 时间:
2020-06-09 20:25:14
阅读次数:
431
问题描述 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。 示例: 给定 nums = [2, 7, 11, 15], target = 9 因为 n ...
分类:
其他好文 时间:
2020-06-06 16:58:28
阅读次数:
51
128. 最长连续序列 给定一个未排序的整数数组,找出最长连续序列的长度。要求算法的时间复杂度为 O(n)。示例:输入: [100, 4, 200, 1, 3, 2]输出: 4解释: 最长连续序列是 [1, 2, 3, 4]。它的长度为 4。 1.解题思路 由于题目要求连续序列,因此用 集合 去重。 ...
分类:
其他好文 时间:
2020-06-06 13:07:45
阅读次数:
50
面试题29. 顺时针打印矩阵 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。 示例 1: 输入:matrix = [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9,8,7,4,5] 1.解题思路 暴力法,指针从数组第一个数开始判断:这个数是哪个边界(上下 ...
分类:
其他好文 时间:
2020-06-05 13:19:12
阅读次数:
69
题目链接 #题目大意 有n个编号为0~n的物品,并且有两个操作,分别是将两个物品合并在一个集合里和把一个物品从集合里取出来,问最后有多少个集合。 #解题思路 本题主要是如何把物品从集合中取出,可以设立一个与原物品编号不同的点作为辅助点。这样挂在同一个辅助点的物品都是属于同一个集合的,而挂在不同辅助点 ...
分类:
其他好文 时间:
2020-06-04 14:01:12
阅读次数:
52
双指针 解题思路:算法流程: 设定 i,j 两指针分别指向 num1,num2 尾部,模拟人工加法; 计算进位: 计算 carry = tmp // 10,代表当前位相加是否产生进位;添加当前位: 计算 tmp = n1 + n2 + carry,并将当前位 tmp % 10 添加至 res 头部; ...
分类:
其他好文 时间:
2020-06-04 00:56:08
阅读次数:
72