算法设计--分治算法
分治递归
白同学想AC
这个作者很懒,什么都没留下…
展开
-
D - 骨牌铺方格
D - 骨牌铺方格Description在2×n的一个长方形方格中,用一个1× 2的骨牌铺满方格,输入n ,输出铺放方案的总数. 例如n=3时,为2× 3方格,骨牌的铺放方案有三种,如下图:Input输入包含一个整数n,表示该测试实例的长方形方格的规格是2×n (0< n<=50)。Output输出铺放方案的总数。SampleInput3Output3简单的递推题,仔细思考一下就可以得出递推式。唯一注意的一点是数组要用long lo..原创 2020-09-27 10:41:11 · 1008 阅读 · 0 评论 -
C - 顺序表应用7:最大子段和之分治递归法
C - 顺序表应用7:最大子段和之分治递归法Description给定n(1<=n<=50000)个整数(可能为负数)组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的子段和的最大值。当所给的整数均为负数时定义子段和为0,依此定义,所求的最优值为: Max{0,a[i]+a[i+1]+…+a[j]},1<=i<=j<=n。 例如,当(a[1],a[2],a[3],a[4],a[5],a[6])=(-2,11,-4,1.原创 2020-09-27 10:27:09 · 1458 阅读 · 2 评论 -
B - 整数因子分解问题
B - 整数因子分解问题Description大于1的正整数n可以分解为:n=x1*x2*…*xm。例如,当n=12 时,共有8 种不同的分解式:12=12;12=6*2;12=4*3;12=3*4;12=3*2*2;12=2*6;12=2*3*2;12=2*2*3。对于给定的正整数n,计算n共有多少种不同的分解式。Input输入数据只有一行,有1个正整数n (1≤n≤2000000000)。Output将计算出的不同的分解式数输出。Sample...原创 2020-09-20 21:36:36 · 3717 阅读 · 1 评论 -
A - 众数问题--SDUT
A - 众数问题Description给定含有n个元素的多重集合S,每个元素在S中出现的次数称为该元素的重数。多重集S中重数最大的元素称为众数。例如,S={1,2,2,2,3,5}。多重集S的众数是2,其重数为3。对于给定的由n 个自然数组成的多重集S,计算S的众数及其重数。如果出现多个众数,请输出最小的那个。Input输入数据的第1行是多重集S中元素个数n(n<1300000);接下来的n行中,每行有一个最多含有5位数字的自然数,。Output输出数据的第1行给出众数,第2行原创 2020-09-20 20:28:04 · 1903 阅读 · 0 评论