美团笔试

给定a数组,求b数组的数量,规则为:
1. 对于任意的i, ai  != bi
2. a数组的和等于b数组的和

各位大佬的思路是啥?
全部评论
dfs3.33
8 回复 分享
发布于 2023-08-19 21:01 四川
用的dp,测试用例都过了,一交0%😡
7 回复 分享
发布于 2023-08-19 20:59 广东
乱写了一个记搜就过了
1 回复 分享
发布于 2023-08-19 21:03 浙江
背包问题
1 回复 分享
发布于 2023-08-19 21:08 重庆
递归做半天,0%
1 回复 分享
发布于 2023-08-19 21:08 江苏
超时了,原本想把递归换成栈的,时间不够了
点赞 回复 分享
发布于 2023-08-19 20:58 四川
这个线性dp,和京东的第二题一样
点赞 回复 分享
发布于 2023-08-19 20:59 吉林
直接记忆化搜索就可以过
点赞 回复 分享
发布于 2023-08-19 21:00 上海
我用的递归 测试用例都过了 提交为0
点赞 回复 分享
发布于 2023-08-19 21:01 陕西
dp背包,3ms 400KB
点赞 回复 分享
发布于 2023-08-19 21:02 广东
点赞 回复 分享
发布于 2023-08-19 21:04 四川
维护长度为sum的数组做dp,dp[i]表示当前用i来满足自当前元素之后的所有元素的满足要求的数量,然后想办法从后到前遍历所有元素维护这个数组,最后输出dp[sum]
点赞 回复 分享
发布于 2023-08-19 21:04 浙江
dp[i][j]:表示构建新数组来到i位置 此时数组的和还剩余j ==>dp[数组长度][0] = 1: ==>第一列,最后一行答案已知 ==>需要知道:dp[0][sum]的值 ==>dp[i][j] = dp[i + 1][j - k]的和 其中j-k>=0 但是我只能过6%,不知道哪的问题 我的代码,看看佬能看出来我哪有问题 // Scanner sc = new Scanner(System.in); // int n = sc.nextInt(); // int[] resource = new int[n]; // for (int i = 0; i < n; i++) { // resource[i] = sc.nextInt(); // } // int sum = Arrays.stream(resource).sum(); // long[][] dp = new long[n + 1][sum + 1]; // dp[n][0] = 1; // for(int i = n - 1;i >= 0;i--){ // for(int j = 1;j < dp[0].length;j++){ // long res = 0; // for(int k = 1;j - k >= 0;k++){ // if(resource[i] == k) // continue; // res = res + dp[i + 1][j - k] % 1000000007; // } // res += dp[i + 1][j - 1]; // dp[i][j] = res; // } // } // System.out.println(dp[0][sum]);
点赞 回复 分享
发布于 2023-08-19 21:07 陕西
回溯3.33,超时
点赞 回复 分享
发布于 2023-08-19 21:07 广东
想到了是01背包问题,但还是用dfs做了,js简单优化了下3.33
点赞 回复 分享
发布于 2023-08-19 21:17 广东

相关推荐

10-10 21:35
门头沟学院 Java
一面-&nbsp;三数之和(捏吗这个都写了个OOM)-&nbsp;实习项目(讲了好久,还是听不懂,我也讲不来啊)-&nbsp;Raft选主,日志复制-&nbsp;QPS咋测得-&nbsp;缓存一致性咋做的(定时任务)-&nbsp;如果我要一致性要高又要并发怎么做(分布式锁,&nbsp;canal+消息队列)-&nbsp;缓存热门数据结构用的啥结构,为什么要用这个-&nbsp;如果提升服务的可用性(只会加机器)-&nbsp;你怎么理解重构-&nbsp;重构里面有什么指导思想-&nbsp;你有什么重构的实践-&nbsp;总结:一直讲项目,讲了得有半小时,有点难崩二面-&nbsp;介绍了一下业务-&nbsp;未来规划方向,data还是后端-&nbsp;如何去进行学习的-&nbsp;实习期间学到了什么-&nbsp;是授课的还是研究的,为啥选数据科学,主要学什么-&nbsp;上来问了好多BQ………-&nbsp;MySQL为什么推荐单表2000W(突然一下算不出来了)-&nbsp;MySQL里面join是怎么去做优化的-&nbsp;如何优化索引-&nbsp;了解MySQL锁机制吗,知道多少说多少-&nbsp;了解事务吗,知道innodb如何实现事务的吗-&nbsp;还知道什么存储数据库,&nbsp;引擎(说了ES)-&nbsp;ES数据结构是什么-&nbsp;还知道其他的数据库吗(NoSQL,&nbsp;MongoDB,&nbsp;Neo4j,&nbsp;忘记说clickhouse和starrock了….)-&nbsp;Redis的基本数据结构-&nbsp;Java里面并发编程需要注意什么(3个性质)-&nbsp;JUC包下有啥(忘记ReentrantLock在不在juc下面了),都说说-&nbsp;点菜ReentrantLock,&nbsp;Synchronized原理,实现过程,AtomicInteger原理,乐观锁悲观锁区别-&nbsp;并发集合类知道那些-&nbsp;线程池你喜欢用哪一种-&nbsp;为什么不推荐使用ExcutorService创建线程池-&nbsp;线程池的参数和工作原理-&nbsp;内存泄漏是啥,知道什么例子-&nbsp;怎么排查内存泄漏的-&nbsp;用jstack,jmap能帮助你改代码吗(不懂,不是只能定位吗,答需要人修改代码)-&nbsp;如果现在一个内存敏感性应用,从那些方面做考虑(池化,合理管理对象生命周期,避免内存泄漏,单例复用对象)-&nbsp;如果现在一个10WQPS去生成订单号的服务接口,你怎么设计(我以为是下订单,一直说异步),雪花算法,独立出服务加集群(忘了说etcd和zookeeper了),说可以看看美团下面的发号器怎么实现的-&nbsp;总结:&nbsp;感觉全程对着面试题念的-&nbsp;更新挂了,不懂应该是没hc,面试的时候给我介绍了好久的业务,一直问我这个方向有没有兴趣,我还以为要定我了#美团##秋招##后端#
点赞 评论 收藏
分享
1 1 评论
分享
牛客网
牛客企业服务