Arithmetic problem
文章平均质量分 65
sweeterer
这个作者很懒,什么都没留下…
展开
-
Arithmetic problem | 二进制表示
题目如下:给定一个数将其转换为二进制(均用字符串表示),如果这个数的小数部分不能在 32 个字符之内来精确地表示,则返回"ERROR"。样例n = "3.72", 返回 "ERROR".n = "3.5", 返回 "11.1".解题思路:这个题用小数乘以2取个位的常规方法显然是不明智的,二进制的拿取来源最好还是从类型上着手。拥有小数部分并能包含3原创 2016-08-15 19:28:50 · 11784 阅读 · 8 评论 -
Arithmetic problem | Target Sum
题目如下:You are given a list of non-negative integers, a1, a2, …, an, and a target, S. Now you have 2 symbols + and -. For each integer, you should choose one from + and - as its new symbol.Find out how m原创 2017-02-12 18:37:58 · 7062 阅读 · 0 评论 -
Arithmetic problem | 书籍复印
题目如下: 给出一个数组A包含n个元素,表示n本书以及各自的页数。现在有个k个人复印书籍,每个人只能复印连续一段编号的书,比如A[1],A[2]由第一个人复印,但是不能A[1],A[3]由第一个人复印,求最少需要的时间复印所有书。样例: A = [3,2,4],k = 2返回5,第一个人复印前两本书解题思路: 这个题有一定难度,先提出合理假设B(l,k)为l个数据规模的k人分配使用最短时间。把原创 2017-02-05 22:27:10 · 6024 阅读 · 0 评论 -
Arithmetic problem | 非法二进制数
题目如下:如果一个二进制数包含连续的两个1,我们就称这个二进制数是非法的。找出在所有 n 位二进制数(一共有2^n个)中,非法二进制数有多少个。例如对于 n = 3,有 011, 110, 111 三个非法二进制数。由于结果可能很大,你只需要输出模10^9+7的余数。输入 一个整数 n (1 ≤ n ≤ 100)。输出 n 位非法二进制数的数目模10^9+7的余数。样例输入:3样例输出:3解题思原创 2017-02-04 16:22:36 · 5187 阅读 · 0 评论 -
Arithmetic problem | 求n个直方图所含最大的矩形面积
题目如下:给出的n个非负整数表示每个直方图的高度,每个直方图的宽均为1,在直方图中找到最大的矩形面积。以上直方图宽为1,高度为[2,1,5,6,2,3]。最大矩形面积如图阴影部分所示,含有10单位样例给出 height = [2,1,5,6,2,3],返回 10解题时产生两个思路:1:每个柱子都按当前位置左右遍历,左右原创 2016-08-11 20:29:29 · 11167 阅读 · 7 评论 -
Arithmetic problem | 吹爆n个气球,得到最多的分数
题目如下:有n个气球,编号为0到n-1,每个气球都有一个分数,存在nums数组中。每次吹气球i可以得到的分数为nums[left] * nums[i] * nums[right],left和right分别表示i气球相邻的两个气球。当i气球被吹爆后,其左右两气球即为相邻。要求吹爆所有气球,得到最多的分数。样例给出 [4, 1, 5, 10]返回 270nums原创 2016-08-11 15:04:29 · 14845 阅读 · 5 评论 -
Arithmetic problem | 最大间距
题目如下:给定一个未经排序的数组,请找出其排序表中连续两个要素的最大间距。如果数组中的要素少于 2 个,请返回 0。使用线性的时间和空间复杂度的方法解决这个问题。样例给定数组 [1, 9, 2, 5],其排序表为 [1, 2, 5, 9],其最大的间距是在 5 和 9 之间,= 4.解题思路:这题目明显是要排序操作的,原创 2016-09-01 13:18:32 · 11426 阅读 · 3 评论 -
Arithmetic problem | 统计前面比自己小的数的个数
题目如下:给定一个整数数组(下标由 0 到 n-1, n 表示数组的规模,取值范围由 0 到10000)。对于数组中的每个 ai 元素,请计算ai 前的数中比它小的元素的数量。样例对于数组[1,2,7,8,5] ,返回 [0,1,2,3,2]解题时产生3个思路:1:暴力向ai前面的元素比较扫描,复杂度最高。2:这题目要的是前面比自己小的数的个数,原创 2016-08-21 21:32:56 · 14928 阅读 · 11 评论 -
Arithmetic problem | 判定字符串是否为攀爬字符串
题目如下:给定一个字符串 S1,将其递归地分割成两个非空子字符串,从而将其表示为二叉树。下面是s1 = "great"的一个可能表达: great / \ gr eat / \ / \g r e at / \ a t在攀爬字符串的过程中,我们可以选择其中任意一个非叶节点原创 2016-08-09 15:12:06 · 9880 阅读 · 7 评论 -
Arithmetic problem | 单词接龙 II
题目如下:给出两个单词(start和end)和一个字典,找出所有从start到end的最短转换序列比如:每次只能改变一个字母。变换过程中的中间单词必须在字典中出现。 注意事项所有单词具有相同的长度。所有单词都只包含小写字母。样例给出数据如下:start = "hit"end = "c原创 2016-08-27 18:40:44 · 15915 阅读 · 15 评论 -
Arithmetic problem | 找到数组中滑动窗口内的最大值
题目如下:给出一个可能包含重复的整数数组,和一个大小为 k 的滑动窗口, 从左到右在数组中滑动这个窗口,找到数组中每个窗口内的最大值。O(n)时间,O(k)的额外空间样例给出数组 [1,2,7,7,8], 滑动窗口大小为 k = 3. 返回 [7,7,8].解释:最开始,窗口的状态如下:[|1, 2 ,7| ,7 , 8], 最大值为 7;然后窗原创 2016-08-03 20:27:03 · 12037 阅读 · 6 评论 -
Arithmetic problem | 从数组选K个数位于原数组相对位置,求K个数的最大数
题目如下:给出两个长度分别是m和n的数组来表示两个大整数,数组的每个元素都是数字0-9。从这两个数组当中选出k个数字来创建一个最大数,其中k满足k 。选出来的数字在创建的最大数里面的位置必须和在原数组内的相对位置一致。返回k个数的数组。你应该尽可能的去优化算法的时间复杂度和空间复杂度。样例给出 nums1 = [3, 4, 6, 5], nums2 = [9,原创 2016-08-01 19:50:45 · 9178 阅读 · 8 评论 -
Arithmetic problem | 找二维矩阵权值为1的最大矩形面积
题目如下:给你一个二维矩阵,权值为False和True,找到一个最大的矩形,使得里面的值全部为True,输出它的面积。样例给你一个矩阵如下[ [1, 1, 0, 0, 1], [0, 1, 0, 0, 1], [0, 0, 1, 1, 1], [0, 0, 1, 1, 1], [0, 0, 0, 0, 1]]输出6解题思路:没接触原创 2016-07-28 11:50:17 · 14400 阅读 · 8 评论 -
Arithmetic problem | 求两个排序数组的中位数
题目如下:两个排序的数组A和B分别含有m和n个数,找到两个排序数组的中位数,要求时间复杂度应为O(log (m+n))。样例给出数组A = [1,2,3,4,5,6] B = [2,3,4,5],中位数3.5给出数组A = [1,2,3] B = [4,5],中位数 3解题思路:【注意,下述所说的中位数是思维上面的中位数位置,并不是真正的数组中位数。原创 2016-07-26 08:44:43 · 9890 阅读 · 6 评论 -
Arithmetic problem | 给定 l, r, k,求在 [l, r] 区间中,所有 f(x) = k 的 x 的和
题目难度一般,题目如下:给定一个数 x,设它十进制展从高位到低位上的数位依次是 a0, a1, ..., an - 1,定义交错和函数:f(x) = a0 - a1 + a2 - ... + ( - 1)n - 1an - 1例如:f(3214567) = 3 - 2 + 1 - 4 + 5 - 6 + 7 = 4给定 l, r, k,求在原创 2016-07-22 20:09:18 · 11426 阅读 · 9 评论 -
Arithmetic problem | 求出 N 座大楼的外轮廓线
这题目还是有一定难度,题目如下:水平面上有 N 座大楼,每座大楼都是矩阵的形状,可以用三个数字表示(start, end, height),分别代表其在x轴上的起点,终点和高度。大楼之间从远处看可能会重叠,求出 N 座大楼的外轮廓线。外轮廓线的表示方法为若干三元组,每个三元组包含三个数字 (start, end, height),代表这段轮廓的起始位置,终止位置和高度。原创 2016-07-21 16:44:34 · 12096 阅读 · 9 评论 -
Arithmetic problem | 海拔图最多能接住多少(面积)雨水
最近发现一道挺有趣的算法题,题目如下:给出 n 个非负整数,代表一张X轴上每个区域宽度为 1 的海拔图, 计算这个海拔图最多能接住多少(面积)雨水。样例如上图所示,海拔分别为 [0,1,0,2,1,0,1,3,2,1,2,1], 返回 6.解答时产生了2个思路1:如果p点为最高点,那么p点左边与右边必会出现比p点低的海拔。(此思路错误,因为高原创 2016-07-18 09:54:24 · 21963 阅读 · 11 评论 -
Arithmetic problem | 在原地顺时针90度旋转矩阵图像
题目如下:给定一个N×N的二维矩阵表示图像,90度顺时针旋转图像。样例给出一个矩形[[1,2],[3,4]],90度顺时针旋转后,返回[[3,1],[4,2]]解题思路:旋转一个矩阵,要是允许额外空间的话会显得简单不少。但要求在原地进行显然要跟两数交换扯上一定关系。如图:从上图可以分析出,d33-->d30需要3步交换,1:d33a03,原创 2016-08-16 09:46:05 · 11813 阅读 · 7 评论 -
Arithmetic problem | The Triangle
题目如下:Figure 1 shows a number triangle. Write a program that calculates the highest sum of numbers passed on a route that starts at the top and ends somewhere on the base. Each step can go either diagon原创 2017-01-29 15:00:50 · 7995 阅读 · 2 评论