菜鸟什么时候才能变成老鸟,欢迎留言纠错~|

Shie1d

园龄:5年9个月粉丝:6关注:0

随笔分类 -  美团笔试

小美的数组构造(美团2024届秋招笔试第二场编程真题)
摘要:题面 核心思想 dp[i][j] 表示前i个数字和为j时的组合数 那么第i个数的取法有 1 <= k <= j 需要遍历 第 i 个数取 k 前 i - 1 个数取 j - k 时 dp[i][j] = (dp[i][j] + dp[i - 1][j - k]) % MOD; 注意是和为j 第i个数
118
0
0
小美的01串翻转(美团2024届秋招笔试第二场编程真题)
摘要:题面 核心思想 区间DP dp[i][j][2] 表示区间 i~j (i,j都包含)区间 在下标j 变成0 和 1 的 两种情况下满足条件的操作次数 代码 import java.util.*; public class Main { public static void main(String[]
71
0
0
小美的数组操作(美团2024届秋招笔试第二场编程真题)
摘要:题面 核心思想 可以从示例中看出 当 sum / n 能够整除时 我们选择平均数作为众数即可 不能整除时 也就表示着不可能让所有数相同 那么我们可以舍弃掉一个数a 记剩下的数集合为 b 那么当 b 需要 +1 或 -1 后可能会剩下一些数 那么我们可以选择让 a去执行相反操作从而不影响 b 中剩下的
288
0
0
小美的字符串变换(美团2024届秋招笔试第一场编程真题)
摘要:题面 核心思想 这题主要在于复杂度的考虑 枚举每一行能放多少个并不是o(n)的 就算是10000也就20几个能整除的 所以第一层循环复杂度很小 内循环一遍dfs o(n)搜索就ok 这里也没有新建矩阵 是在原字符串上操作的~ 代码 import java.util.*; public class M
113
0
0
小美的蛋糕切割(美团2024届秋招笔试第一场编程真题)
摘要:题面 核心思想 前缀和(不过是以一整行或一整列的维度)(滑动窗口应该也可以) 需要注意的是可以横着切也可以竖着切 代码 import java.util.*; public class Main { public static void main(String[] args) { final lon
46
0
0
小美走公路(美团2024届秋招笔试第一场编程真题)
摘要:题面 核心思想 正走一遍,反走一遍。 代码 import java.util.*; public class Main { public static void main(String[] args) { final long MOD = (long) (1e9 + 7); Scanner scan
59
0
0
小美的排列构造(美团2024届秋招笔试第一场编程真题)
摘要:题面 核心思想 贪心 最大 最小 次大 次小 ····· 这样就行了。 代码 import java.util.*; public class Main { public static void main(String[] args) { final long MOD = (long) (1e9 +
51
0
0
小美的排列询问(美团2024届秋招笔试第一场编程真题)
摘要:题面 核心思想 模拟 需要注意的是 1~n 只会出现一次 所有nums[i] 如果等于x(或y),下一位等不等于y(或x),就可以直接判断出结果了。 代码 import java.util.*; public class Main { public static void main(String[]
56
0
0
小美的树上染色(美团2024届秋招笔试第一场编程真题)
摘要:题面 核心思想 树形DP dp[1]表示以当前节点为根节点以及所包含的子树 且 当前节点能染色的最大染色数量 dp[0]表示以当前节点为根节点以及所包含的子树 且 当前节点不染色的最大染色数量 dp[0]好算,只用把孩子节点的dp值取max累加就好了 dp[1] 假设当前节点为cur,cur能和孩子
372
0
0
小美的字符串匹配度(美团2024届秋招笔试第一场编程真题)
摘要:题面 核心思想 首先对于本来就匹配的肯定不能动 第一次遍历 对于匹配的res++ 对于不匹配的 用HashMap<Character, List> mp 存放当s[i]!=t[i]时 字符t[i]的下标i,表示t[i]的这个字符出现在t的位置 然后我们在做一次遍历 当s[i]!=t[i]时 且 t
159
0
1
小美的外卖订单(美团2024届秋招笔试第一场编程真题)
摘要:题面 核心思想 折扣价不能大于原价 原价才能参与满家 原价、折扣价和满减的价格都必须是正实数 格式化输出 代码 import java.util.*; public class Main { public static void main(String[] args) { final long MO
56
0
0
判断ip地址是否合法(美团2024届秋招笔试第三场编程真题)
摘要:核心思想 大模拟 -。-,还是不够细心,面向样例编程,一路错过去的。 主要的想法还是转成int 数字再处理 请看注释 写得太丑了 凑合看吧。 代码 import java.util.*; public class Main { public static void main(String[] arg
52
0
0
小美的数组重排(美团2024届秋招笔试第三场编程真题)
摘要:核心思想 贪心的选择 a最大 + b最小 想想如果 a最大的加上b最小的 都能越出边界,那岂不是就没有数字能够让结果在区间内了。 题目说重排a,既然a的位置没要求(随便挪),反过来b也是随便挪的。 代码 import java.util.*; public class Main { public s
40
0
0
小美种果树(美团2024届秋招笔试第三场编程真题)
摘要:核心思想 第一天施肥浇水 第二天浇水 第三天浇水 定义以上操作为一轮 先计算能够操作多少轮,那么剩下的只能在一轮中完成,剩下的成长值模拟下就好。 代码 import java.util.*; public class Main { public static void main(String[] a
60
0
0
小美的游戏(美团2024届秋招笔试第三场编程真题)
摘要:核心思想 贪心,每次选最大的两个~ 代码 import java.util.*; public class Main { public static void main(String[] args) { final long MOD = (long) (1e9 + 7); Scanner scann
48
0
0
小红结账(美团2024届秋招笔试第三场编程真题)
摘要:核心思想 模拟就完了 代码 import java.util.*; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scann
28
0
0
小球投盒(美团2024届秋招笔试第三场编程真题)
摘要:核心思想 用一个set存储还没有球的盒子 一旦有2操作 那就剩下1个盒子没有球 代码 import java.util.*; public class Main { public static void main(String[] args) { TreeSet<Integer> q = new T
37
0
0
平均数为k的最长连续子数组(美团2024届秋招笔试第三场编程真题)
摘要:题面 核心思想 如果一段区间内的数平均值为k,那么每个数减去k之后平均值就为0 所以每个数-k 然后计算前缀和并放入map 其中:key=前缀和 value=当前下标 出现重复的前缀和preSum 说明存在平均值为k的区间 [mp.get[preSum] + 1, i] 由于需要最长的子数组 所以只
68
0
0
点击右上角即可分享
微信分享提示
深色
回顶
收起