用1 2 5三个数不同个数的组合的和为100的组合
来源:互联网 发布:如何去日本工作知乎 编辑:程序博客网 时间:2024/05/18 03:52
方程式:5*m + 2*n + 1*k = 100
字面可知:m<=20, n<=50, k<=100
故最简单方式如下:
int fun1(){
int total = 0;
for (int m = 0; m <= 20; m++)
{
for (int n = 0; n <= 50; n++){
for (int k = 0; k <= 100; k++){
if (m * 5 + n * 2 + k * 1 == 100){
total++;printf("%d*5 + %d*2 + %d*1 = 100\n", m, n, k);break;
}
}
}
}printf("total is %d", total);
return total;
}
上述循环次数过多,再次分析可知5*m + 1*k和为偶数,即可知:
m=0 k=100 98 96 ... 0
m=1 k=95 93 91 ... 1
...
m=19 k=5 3 1
m=20 k=0
总结规律:
int fun2()
{
int total;
for (int i = 0; i< 100; i += 5)
{
total += (i +2) / 2;
}
return total;
}
0 0
- 用1 2 5三个数不同个数的组合的和为100的组合
- 求用1,2,5这三个数不同个数组合的和为100的组合个数
- 求用1,2,5这三个数不同个数组合的和为100的组合个数
- 用1、2、5这三个数不同个数组合的和为100的组合数
- 求出用1,2,5这三个数不同个数组合的和为1000的组合个数
- 求:1,2,5这三个数不同组合的和为100的组合的个数!Java实现。
- 华为面试题:求出用1,2,5这三个数不同个数组合的和为100的组合个数
- 求用1,2,5这三个数不同个数组合的和为100的组合个数(昨天笔试一道题,只写最基本的方法,效率非常低)
- 整型数组处理算法(十三)求出用1,2,5这三个数不同个数组合的和为100的组合个数(华为校园招聘题)
- 每天学习一算法系列(23)(写一个程序,要求功能,求出用1、2、5这三个数不同个数组合的和为100的组合数)
- 1,2,5这三个数不同个数组合_h
- 和为指定数的组合个数
- 1-100中, 求:5个不同数的和小于100的不重复组合的个数
- 用1,2,5这三个数相加(可重复)和为100的个数
- 组合数的和
- 求数组内任意三个数相加和为零的组合
- 求一个数组中三个数和为0的组合
- 求最大的组合数:用不同的数字组合,找到最大的那一个组合
- Java多线程:线程状态
- 2014年3月29阿里巴巴实习生笔试题目
- 黑马程序员-集合框架【TreeSet】、【二叉树】、【Comparable接口】、【Comparator接口】
- dos命令运行sqlite3查看android中的sqlite文件是否有数据
- cocos2d-x 懒人专用宏介绍
- 用1 2 5三个数不同个数的组合的和为100的组合
- windows 系统资源获取的c++ 方法
- CentOS 网卡驱动安装
- 最大子数组
- 生活流水账(转载老婆的文章)
- USACO打怪升级(二): TEXT Submitting Solutions
- c函数之【错误处理函数】
- 从JSON取数据实现图片瀑布流布局的数据动态加载
- 三维旋转的四元数表示方法的解释