面字节遇到的一个算法题,求大佬解答

一个数组a,长度是n,划分为和相等的m个子数组
求m的最大值?
例a=[2,4,3,6,3,9]
m=3
[2,4,3],[9],[3,6]

#面试那些事##字节跳动##笔试题目#
全部评论
子节面试算法题都这么难嘛
1 回复 分享
发布于 2022-03-28 01:27
如果是划分子数组不是子集 那倒还好吧 没有特别难
1 回复 分享
发布于 2022-03-30 14:52
求sum;枚举分成的块数(比如案例中分成了3块);贪心地验证当前的这个分法是否可行(这里能求出子数组和=sum/块数,前提是能整除)
1 回复 分享
发布于 2022-03-30 20:38
能否用双指针,两头走,左边值小于右边,则左边右走,左边大于右边,右边左走,等于,就先记录下来,又处理中间剩下的,没有值与之前相等的,就把前面的取出来又向中间增加数据处理?我自己想的,还没做
点赞 回复 分享
发布于 2022-04-23 10:12
import org.junit.Test; /** * 题目: 一个数组a,长度n,划分为和相等的m个子数组,求m的最大值? * case:a=[2,4,3,1,1,1,3,6,1,1,1,3,9,1,1,1] * 答案:m=3 [2,4,3] [9] [3,6] */ public class test1 { public int getMax(int[] a){ int max=0,sum=0,num_max=0; for (int i=0;i<a.length>num_max){ num_max=a[i]; } } for (int i=0;i<a.length>max){ max=i; } } } } return max; } @Test public void test(){ int[] a=new int[]{3,7,2,4,5,6,9}; int b=getMax(a); System.out.println("最大值b:"+b); } }</a.length></a.length>
点赞 回复 分享
发布于 2022-04-30 19:02

相关推荐

一个菜鸡罢了:哥们,感觉你的简历还是有点问题的,我提几点建议,看看能不能提供一点帮助 1. ”新余学院“别加粗,课程不清楚是否有必要写,感觉版面不如拿来写一下做过的事情,教育经历是你的弱势就尽量少写 2. “干部及社团经历”和“自我评价”删掉 3. 论文后面的“录用”和“小修”啥的都删掉,默认全录用,问了再说,反正小修毕业前肯定能发出来 4. 工作经验和研究成果没有体现你的个人贡献,着重包装一下个人贡献
点赞 评论 收藏
分享
贺兰星辰:不要漏个人信息,除了简历模板不太好以外你这个个人简介是不是太夸大了...
点赞 评论 收藏
分享
评论
1
4
分享
牛客网
牛客企业服务