第三题 public int get(int n/*现在是第几个人*/,int sign/*上一个人分到的月饼数目*/,int count/*总共有多少个人*/,int sum/*月饼剩余数目*/){ if(n<=count){ int s=0; s+=get(n+1,sign,count,sum-sign); s+=get(n+1,sign+1,count,sum-sign-1); s+=get(n+1,sign+2,count,sum-sign-2); s+=get(n+1,sign+3,count,sum-sign-3); return s; }else{/*人已分完*/ if(sum==0){/*满足条件*/ return 1; }else{ return 0; } } } 第一题用一个动态的滑动窗口就行了,记录窗口之中的数字之和,和大于目标值左指针右移,反之右指针右移。 第二题这个题目描述没看懂...
点赞 评论

相关推荐

牛客网
牛客企业服务