
算法
kanesunny
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
百度贴吧里见到的一道题
问题描述 有一天阳阳摆弄着他最钟爱的木棒,他突发奇想,如果从中任意选取确定数量木棒,然后拼接成一根,可以得到多少长度不一的木棒呢? 输入格式 两行。 第1行,2个正整数N和M,分别表示阳阳共拥有木棒数和选出木棒的数量。 第2行,N个500以内的正整数,表示各木棒的长度。 输出格式 一个整数,表示可以拼接出不同长度木棒的数量。 输入样例 4 3 1 3 5 7 输出样例 4原创 2016-08-24 23:52:25 · 937 阅读 · 0 评论 -
数列求和 S=A+AA+AAA+...
题目:给出某数字A(1 这是个常见的题目,考虑到数的位数可能很大,数据没法保存,所以用char数组来处理,做法是小学竖式加法,从个位数开始处理,A*N%10即S的个位,进位carry等于A*N/10,接着处理十位数。如果加到最大的位数时进位大于0,则直接输出carry #include char num[100001]; int main() { in原创 2016-12-12 16:06:06 · 2337 阅读 · 0 评论 -
换零钱问题
现有币值为1分,5分,10分,25分和50分的硬币,各种硬币可以任意取整数枚,也可以不取,问有多少种方法可以使所取的硬币的总币值为1元。这是个典型的组合数学问题,可以构造生成函数,然后求出某项的系数来得到结果。生成函数的原理基于加法变乘法,即xa+b+c+d...=xa⋅xb⋅xc⋅xd...x^{a+b+c+d...} = x^a·x^b·x^c·x^d...具体到我们现在这个题,题目是求 1⋅a原创 2017-04-22 08:55:18 · 894 阅读 · 0 评论 -
求元素组合的算法
问题:已知有n个元素,求含m个元素的所有组合。 算法其实很简单: 该种组合分为两类情况:1)不含某元素,则剩余的元素中选m个。2)含某元素,则剩余的元素中选m-1个 下面的简单例子中给出7个元素中含3个元素的所有组合,使用的是递归函数 #include int num[]={1,2,3,4,5,6,7},index=0,result[7]; void原创 2016-06-19 20:01:21 · 1311 阅读 · 0 评论