淘宝面试题
来源:互联网 发布:淘宝贷款80万还不上 编辑:程序博客网 时间:2024/05/17 02:30
N个鸡蛋放到M个篮子中,篮子不能为空,要满足:对任意不大于N的数量,能用若干个篮子中鸡蛋的和表示。
写出函数,对输入整数N和M,输出所有可能的鸡蛋的放法。
蛮力法
<pre name="code" class="cpp">// PackEgg.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include "stdio.h"#define MAX 10int N;int M;//篮子数int basket[MAX]={0};bool checkSum(){int i,j,k;for (i = 1; i <= N; i++){k = M;j = 1;while(j < k){if ((basket[j] + basket[k]) == i)break;if ((basket[j] + basket[k]) > i)k--;elsej++;}}return true;}void PackEgg(int n, int m) //n个鸡蛋第m个篮子{int i;if (m == M && n >=basket[m-1]){basket[m] = n;if (checkSum()){for(int i = 1; i <= M; i++)printf("%d", basket[i]);printf("\n");}return;}for (i = 1; i <= n - (M-m); i++){basket[m] = i;if (i >= basket[m-1]) //当前篮子放的鸡蛋要不能比上个篮子的少PackEgg(n - i,m+1);}}int main(int argc, char* argv[]){scanf("%d %d", &N, &M);PackEgg(N, 1);return 0;}
0 0
- 淘宝面试题
- 淘宝面试题
- 淘宝面试题cacheline
- 淘宝面试题
- 淘宝的一道面试题
- 一道淘宝校园面试题
- 淘宝的一道面试题
- 淘宝研究院的面试题
- 淘宝面试题--大表建约束
- 一道淘宝校园面试题的思考
- 淘宝网前端开发面试题
- 淘宝面试题 放鸡蛋问题
- 淘宝UED前端开发面试题
- 淘宝面试题猜数字游戏
- 淘宝某部门的技术面试题
- 腾讯,创新工场,淘宝面试题
- 淘宝面试题之CountDownLatch应用
- 几行代码解决淘宝面试题之Clojure版
- 图论-最短路问题及MATLAB程序实现
- Hdmi edid 数据解析
- 在case语句中定义变量的问题
- hdu4893(线段树成段更新)
- BUPT2014新生暑假个人排位赛08
- 淘宝面试题
- typedef #define
- 筷子 - NJUPT 1851 dp
- POJ 2503 Babelfish map做法
- C++中的单例模式
- 腾讯面试题
- 《计算机程序的构造与解释》(总结)
- HDU 2159---FATE【二维完全背包】
- Hadoop集群(第1期)_CentOS安装配置