随笔分类 - 刷题
摘要:题目描述 给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例 1:输入:l1 = [2,4,3], l2 = [5,
阅读全文
摘要:题目描述 有一个集合组成的list,如果有两个集合有相同的元素,将他们合并。返回最后还剩下几个集合。 集合数 n <= 1000。 每个集合的元素个数 m <= 100。 元素一定是非负整数,且不大于 100000。 样例 样例1: 输入:list = [[1,2,3],[3,9,7],[4,5,1
阅读全文
摘要:题目描述 描述 给一字符串 s, 找出在 s 中的最长回文子序列的长度. 你可以假设 s 的最大长度为 1000. 样例 样例1 输入: "bbbab" 输出: 4 解释: 一个可能的最长回文序列为 "bbbb" 样例2 输入: "bbbbb" 输出: 5 标签 优步 亚马逊 动态规划 区间型动态规
阅读全文
摘要:题目描述 地上有一个 m 行和 n 列的方格,横纵坐标范围分别是 0∼m−1 和 0∼n−1。 一个机器人从坐标 (0,0)的格子开始移动,每一次只能向左,右,上,下四个方向移动一格。 但是不能进入行坐标和列坐标的数位之和大于 k的格子。 请问该机器人能够达到多少个格子? 样例1 输入:k=7, m
阅读全文
摘要:题目描述 熊大妈的奶牛在小沐沐的熏陶下开始研究信息题目。 小沐沐先让奶牛研究了最长上升子序列,再让他们研究了最长公共子序列,现在又让他们研究最长公共上升子序列了。 小沐沐说,对于两个数列 A 和 B ,如果它们都包含一段位置不一定连续的数,且数值是严格递增的,那么称这一段数是两个数列的公共上升子序列
阅读全文
摘要:题目描述 你正在和朋友玩一个游戏:桌子上有一堆石头,每一次你们都会从中拿出1到3个石头。拿走最后一个石头的人赢得游戏。游戏开始时,你是先手。 假设两个人都绝对理性,都会做出最优决策。给定石头的数量,判断你是否会赢得比赛。 举例:有四个石头,那么你永远不会赢得游戏。不管拿几个,最后一个石头一定会被你的
阅读全文
摘要:问题描述 你总共有n 万元,希望申请国外的大学,要申请的话需要交一定的申请费用,给出每个大学的申请费用以及你得到这个大学offer的成功概率,大学的数量是 m。如果经济条件允许,你可以申请多所大学。找到获得至少一份工作的最高可能性。 0<=n<=10000,0<=m<=10000 样例 样例 1:
阅读全文
摘要:题目描述 给出 n 个物品, 以及一个数组, nums[i]代表第i个物品的大小, 保证大小均为正数并且没有重复, 正整数 target 表示背包的大小, 找到能填满背包的方案数。 每一个物品可以使用无数次 样例 样例1 输入: nums = [2,3,6,7] 和 target = 7 输出: 2
阅读全文
摘要:题目描述 给定 n 种物品, 每种物品都有无限个. 第 i 个物品的体积为 A[i], 价值为 V[i]. 再给定一个容量为 m 的背包. 问可以装入背包的最大价值是多少? 不能将一个物品分成小块. 放入背包的物品的总大小不能超过 m. 样例 样例 1: 输入: A = [2, 3, 5, 7],
阅读全文
摘要:题目描述 有 n 个物品和一个大小为 m 的背包. 给定数组 A 表示每个物品的大小和数组 V 表示每个物品的价值. 问最多能装入背包的总价值是多大? A[i], V[i], n, m 均为整数 你不能将物品进行切分 你所挑选的要装入背包的物品的总大小不能超过 m 每个物品只能取一次 样例 样例 1
阅读全文
摘要:题目描述 在n个物品中挑选若干物品装入背包,最多能装多满?假设背包的大小为m,每个物品的大小为A[i] 你不可以将物品进行切割。 样例 样例 1: 输入: [3,4,8,5], backpack size=10 输出: 9 样例 2: 输入: [2,3,5,7], backpack size=12
阅读全文
摘要:题目描述 你跟你的朋友在玩一个卡牌游戏,总共有 n 张牌。每张牌的成本为 cost[i] 并且可以对对手造成 damage[i] 的伤害。你总共有 totalMoney 元并且需要造成至少 totalDamage 的伤害才能获胜。每张牌只能使用一次,判断你是否可以取得胜利。 样例 样例1 输入: c
阅读全文
摘要:题目描述 给定n本书,第i本书有[i]页。有k个人来抄这些书。 这些书排成一行,每个人都可以索取连续一段的书。例如,一个复印机可以连续地将书从第i册复制到第j册,但是他不能复制第1册、第2册和第4册(没有第3册)。 他们在同一时间开始抄书,每抄一页书都要花1分钟。为了让最慢的复印机能在最早的时间完成
阅读全文
摘要:题目描述: 设有 N 堆石子排成一排,其编号为 1,2,3,…,N。 每堆石子有一定的质量,可以用一个整数来描述,现在要将这 N堆石子合并成为一堆。 每次只能合并相邻的两堆,合并的代价为这两堆石子的质量之和,合并后与这两堆石子相邻的石子将和新堆相邻,合并时由于选择的顺序不同,合并的总代价也不相同。
阅读全文
摘要:题目描述: 给定字符串 s, 需要将它分割成一些子串, 使得每个子串都是回文串. 最少需要分割几次? 样例 样例 1: 输入: "a" 输出: 0 解释: "a" 本身就是回文串, 无需分割 样例 2: 输入: "aab" 输出: 1 解释: 将 "aab" 分割一次, 得到 "aa" 和 "b",
阅读全文
摘要:题目描述: N位同学站成一排,音乐老师要请其中的 (N−K) 位同学出列,使得剩下的 K位同学排成合唱队形。 合唱队形是指这样的一种队形:设 K位同学从左到右依次编号为 1,2…,K,他们的身高分别为 T1,T2,…,TK, 则他们的身高满足 T1<…<Ti>Ti+1>…>TK(1≤i≤K)。 你的
阅读全文
摘要:题目描述: 给出一个非负整数数组,你最初定位在数组的第一个位置。 数组中的每个元素代表你在那个位置可以跳跃的最大长度。 你的目标是使用最少的跳跃次数到达数组的最后一个位置。 样例 样例 1 输入 : [2,3,1,1,4] 输出 : 2 解释 : 到达最后位置的最小跳跃次数是2(从下标0到1跳跃1个
阅读全文
摘要:题目描述: 给定一个自然数 N,要求把 N拆分成若干个正整数相加的形式,参与加法运算的数可以重复。 注意: 拆分方案不考虑顺序; 至少拆分成 2个数的和。 求拆分的方案数 mod2147483648的结果。 输入格式 一个自然数 N。 输出格式 输入一个整数,表示结果。 数据范围 1≤N≤4000
阅读全文
摘要:题目描述: 给定 N 个正整数 A1,A2,…,AN,从中选出若干个数,使它们的和为 M,求有多少种选择方案。 输入格式 第一行包含两个整数 N和 M。 第二行包含 N个整数,表示 A1,A2,…,AN。 输出格式 包含一个整数,表示可选方案数。 数据范围 1≤N≤100 1≤M≤10000, 1≤
阅读全文