摘要: 题意: 给定 N,想象一个凸 N 边多边形,其顶点按顺时针顺序依次标记为 A[0], A[i], ..., A[N-1]。 假设您将多边形剖分为 N-2 个三角形。对于每个三角形,该三角形的值是顶点标记的乘积,三角剖分的分数是进行三角剖分后所有 N-2 个三角形的值之和。 返回多边形进行三角剖分后可 阅读全文
posted @ 2019-10-24 18:02 ljy3268 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 题意: 给出一个字符串 S,考虑其所有重复子串(S 的连续子串,出现两次或多次,可能会有重叠)。返回任何具有最长可能长度的重复子串。(如果 S 不含重复子串,那么答案为 ""。) 示例 1: 示例 2: 思路:(字符串hash+二分) 针对长度简单的从length(S)-1递减时间过长的问题。如果有 阅读全文
posted @ 2019-10-23 15:50 ljy3268 阅读(843) 评论(0) 推荐(0) 编辑
摘要: 方法一(非递归): 算法原理:P = {1,2,3,...n},元素集合1、在P中从右向左遍历,直至查到P{i} < P{i+1} ,记录i的值2、在P中从右向左遍历,找到第一个比P{i}大的值 P{j},记录此时j的值3、交换P{i}​​​​​​​ 和P{j}​​​​​​的值4、将i以后的值翻转, 阅读全文
posted @ 2019-10-23 12:11 ljy3268 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 题意: 给出整数数组A,将该数组分隔为长度最多为K的几个(连续)子数组。分隔完成后,每个子数组的中的值都会变为该子数组中的最大值。 返回给定数组完成分隔后的最大和。 示例: 思路: 简单DP。dp[i]表示分割完前i个数,最大值是多少。j表示当前段的长度[1,K]。假设我们知道[i-j,i]这一段的 阅读全文
posted @ 2019-10-23 00:26 ljy3268 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 题目描述这里有 n 份兼职工作,每份工作预计从 startTime[i] 开始到 endTime[i] 结束,报酬为 profit[i]。给你一份兼职工作表,包含开始时间 startTime,结束时间 endTime 和预计报酬 profit 三个数组,请你计算并返回可以获得的最大报酬。注意,时间上 阅读全文
posted @ 2019-10-21 22:26 ljy3268 阅读(565) 评论(0) 推荐(0) 编辑
摘要: 题意: 有一个只含有 'Q', 'W', 'E', 'R' 四种字符,且长度为 n 的字符串。 假如在该字符串中,这四个字符都恰好出现 n/4 次,那么它就是一个「平衡字符串」。 给你一个这样的字符串 s,请通过「替换子串」的方式,使原字符串 s 变成一个「平衡字符串」。 你可以用和「待替换子串」长 阅读全文
posted @ 2019-10-21 22:08 ljy3268 阅读(658) 评论(0) 推荐(0) 编辑
摘要: 题目: 你有一大块巧克力,它由一些甜度不完全相同的小块组成。我们用数组 sweetness 来表示每一小块的甜度。你打算和 K 名朋友一起分享这块巧克力,所以你需要将切割 K 次才能得到 K+1 块,每一块都由一些 连续 的小块组成。为了表现出你的慷慨,你将会吃掉 总甜度最小 的一块,并将其余几块分 阅读全文
posted @ 2019-10-20 14:23 ljy3268 阅读(1196) 评论(0) 推荐(0) 编辑
摘要: 题意:N×M的网格其中有一条边坏掉了,问从起点到终点的放法数。 分析:数学公式 如果没有坏边的话,总放法数是CN-1(M+N-2) 因为每种方法都要走(M+N-2)步,向上走M-1步,向右走N-1步 现在考虑一条坏边,那么就计算经过这条坏边的方案数然后从总数里面减去经过坏边的方案数即可 经过坏边的方 阅读全文
posted @ 2019-10-19 22:29 ljy3268 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 题意:这道题目考察的n个不同的数环形排列,每次相邻两个数交换位置,这样由正序转变成逆序所需操作的最小次数t。 思路: 如果所有人是线性排列,那我们的工作就是类似冒泡程序做的工作:1,2,3,4,5变为5,4,3,2,1 ,耗时n(n-1)/2 但是出现了环,也就是说1,2,3,4,5变为3,2,1, 阅读全文
posted @ 2019-10-19 22:07 ljy3268 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 题意:给出a,b,求a~b间平方数的个数。 思路:sqrt(b) - sqrt(a-1),注意一下精度误差。 1 #include <stdio.h> 2 #include <string.h> 3 #include <math.h> 4 5 int main () { 6 int a, b; 7 阅读全文
posted @ 2019-10-19 21:57 ljy3268 阅读(111) 评论(0) 推荐(0) 编辑