原题链接:蓝桥杯算法训练VIP-摆动序列
解题思路: 每一组数只有唯一两种排列方式,先对K内求得长度在2以上的组合数,然后求和后乘2即可。 1 1 2 2 3 3 4 4 5 5 6 6 见上图所示,从左到右,便是满6组合的一种排列方式,另一种排列大小交换即可。 从左至右:数就摆起来了不是 注意事项: 参考代码: k = int(input()) def C_k_i(k,i): result=1 up=1 down=1 for j in range(i): up=up*(k-j) down=down*(j+1) result=up//down return result def find_sum(k): count=0 for i in range(2,k+1): count+=C_k_i(k,i) return 2*count print(find_sum(k))
0.0分
1 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复