首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
课程
专栏·文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
想提桶的小章鱼开挂了
中国科学院上海技术物理研究所 电子信息类
发布于上海
关注
已关注
取消关注
@牛客30525170号:
华为机试
公司分月饼,m个员工,买了n个月饼,m <= n,每个员工至少分一个月饼,但是也可以分到多个,单人分到最多月饼的个数是Max1,单人分到第二多月饼个数是Max2。但需要满足Max1-Max2 <= 3,单人分到第n-1多月饼个数是Max(n-1),单人分到第n多月饼个数是Max(n), 想要满足Max(n-1) - Max(n) <= 3,问有多少种分月饼的方法?输入描述:每一行输入m,n,表示m个员工,n个月饼,m <=n输出描述:输出有多少种分法示例1:输入2 4输出2说明4=1+34=2+2注意:1+3和3+1要算成同一种分法示例2:输入3 5输出2说明5=1+1+35=1+2+3示例3:输入3 12输出6说明满足要求的6种分法:1、12 = 1 + 1 + 10 (Max1=10, Max2=1,不满足Max1-Max2 <= 3的约束)2、12 = 1 + 2 + 9 (Max1=9,Max2=2,不满足Max1-Max2 <= 3的约束)3、12 = 1 + 3 + 8 (Max1=8,Max2=3,不满足Max1-Max2 <= 3的约束)4、12 = 1 + 4 + 7 (Max1=7,Max2=4,Max3=1, 满足要求)5、12 = 1 + 5 + 6 (Max1=6,Max2=5,Max3=1, 不满足要求)6、12 = 2 + 2 + 8 (Max1=8,Max2=2,不满足要求)7、12 = 2 + 3 + 7 (Max1=7,Max2=3,不满足要求)8、12 = 2 + 4 + 6 (Max1=6,Max2=4,Max3=2, 满足要求)9、12 = 2 + 5 + 5 (Max1=5,Max2=2 满足要求)10、12 = 3 + 3 + 6 (Max1=6,Max2=3 满足要求)11、12 = 3 + 4 + 5 (Max1=5,Max2=4,Max3=3 满足要求)12 = 4 + 4 + 4 (Max1=4,满足要求)————————————————#include<stdio.h>#include<malloc.h>#include<string.h>//m个月饼放在n个人,没人至少一个且max1-max2<=3 max2=-max3<=3......const int N = 3;const int M = 10;int *path = (int*)malloc(sizeof(int)*N);int pathcount = 0;int**result = (int**)malloc(sizeof(int)*N*M);int resultcount = 0;int getnum(){ int sum = 0; for (size_t i = 0; i < pathcount; i++) { sum += path[i]; } return M - N - sum;}//对m-n 进行回溯void back(int num){ if (pathcount==N) { if (getnum() == 0) { result[resultcount] = (int*)malloc(sizeof(int)*N); memcpy(result[resultcount], path, sizeof(int)*N); resultcount++; } return; } for (int i = num; i >=0; i--) { path[pathcount++] = i; int inum = getnum(); if (inum > i) { inum = i; } else { if (i -inum > 3) { path[--pathcount]; continue; } } back(inum); path[--pathcount]; }}void printfresult(){ for (size_t i = 0; i < resultcount; i++) { for (size_t j = 0; j < N; j++) { printf("%d ", result[i][j]); } printf("\n"); }}int main(){ memset(path, 0, sizeof(int)*N); back(M - N); printfresult(); return 0;}
点赞 3
评论 0
全部评论
推荐
最新
楼层
联想
校招火热招聘中
官网直投
相关推荐
勇敢的番石榴bbq了
05-07 15:43
北京邮电大学 电子信息类
华为海思芯片设计三面
三面自我介绍对岗位的了解和匹配度芯片设计的步骤个人优势反问环节tip:问答一定要简单直接,避免面模糊回答
华为海思三面2人在聊
点赞
评论
收藏
转发
不如打游戏
05-07 10:32
已编辑
算法工程师
24届校招BAT三厂体验
题主秋招拿到阿里夏季实习转正sp offer, 腾讯产品sp offer, 字节秋招offer,并且在三个公司都进行了一段时间的实习,今天来分享一下三个厂的体验,给之后的学弟妹们offer选择提供点建议。新人融入题主会从三个方面分析mentor,氛围,新人融入。阿里新人入职会安排师兄师姐手把手教学各种发布平台和开发平台的使用,基本上前期的项目都有一个师兄/姐来帮助你完成你手上的需求,教的还是比较详细的,因为业务发展的年限比较长了,所以基本上文档的搭建和知识库的构建都是比较完备的,刚入职基本没有什么压力很好的就能融入整个开发体系了,氛围方面由于比较像一个“江湖”,我自己感觉人和人之间的感情还是比...
投递阿里巴巴等公司10个岗位 >
点赞
评论
收藏
转发
江初
03-29 15:18
门头沟学院 计算机类
25届C++找实习,求大佬看看,boss 上沟通200了面试几乎没有。不知道哪出了问题
点赞
评论
收藏
转发
匿名牛油
不愿透露姓名的神秘牛友
昨天 21:07
幸存者偏差
牛客上有二本去大厂,还有九八五找不到工作。大家都看到了前者。后者被忽略了…
点赞
评论
收藏
转发
点赞
收藏
评论
分享
回复帖子
全站热榜
1
...
寻找暑期实习的记忆就此封档啦
9906
2
...
5.11校招&实习招聘信息汇总
7946
3
...
【奖】硬件牛牛答辩过过过!有奖话题领京东卡啦~
6842
4
...
无题
5739
5
...
微信支付一面
5539
6
...
兄弟们之间就别卷了吧,选自己喜欢的offer得了
5202
7
...
5.10校招&实习招聘信息汇总
5145
8
...
5.9校招&实习招聘信息汇总
5013
9
...
小红书一面(半凉)
4438
10
...
恒生人才库
4388
正在热议
#
牛客帮帮团来啦!有问必答
#
610123次浏览
10410人参与
#
秋招开了,你想投哪些公司呢
#
112172次浏览
3213人参与
#
五一之后,实习真的很难找吗?
#
8900次浏览
57人参与
#
我想象的工作vs实际工作
#
86563次浏览
1484人参与
#
浅聊一下我实习的辛苦费
#
77214次浏览
719人参与
#
简历中的项目经历要怎么写
#
413321次浏览
6930人参与
#
租房前辈的忠告
#
27856次浏览
1951人参与
#
华为开奖那些事
#
684376次浏览
5915人参与
#
我的成功项目解析
#
78603次浏览
2307人参与
#
春招你拿到offer了吗
#
350735次浏览
5210人参与
#
机械人怎么评价今年的华为
#
63743次浏览
511人参与
#
我的上岸简历长这样
#
153768次浏览
3082人参与
#
华为工作体验
#
19594次浏览
158人参与
#
你已经投递多少份简历了
#
278907次浏览
4247人参与
#
我发现了面试通关密码
#
315491次浏览
6063人参与
#
你的简历改到第几版了
#
290280次浏览
4422人参与
#
第一次面试
#
45385次浏览
703人参与
#
晒一晒我的offer
#
3153316次浏览
52628人参与
#
毕业租房也有小确幸
#
24005次浏览
1387人参与
#
海康威视求职进展汇总
#
87374次浏览
1059人参与
牛客网
牛客企业服务