每周题目1

该博客介绍了几个使用回溯法和排序算法解决的经典问题,包括造素数、8皇后问题、全排列、幂的计算、快速排序、合并有序数列、逆序对计算以及统计数字。每个问题都提供了输入输出示例和具体的数据范围。
摘要由CSDN通过智能技术生成

每日训练

造素数(回溯)

现在给你n个数,你需要从中选出m个数,使得这m个数的和为素数,求出可选的方案数。

输入
第一行两个整数n和m。

第二行n个整数,表示可选的数字。

输出
输出有多少种方案可以使得选出的数之后为素数。

样例
输入复制
3 2
1 2 3

输出复制
2

输入复制
3 1
2 2 2
输出复制
3
提示
样例1解释:1+2,2+3

对于100%的数据,5<=n<=20,m<=n,可选的数的范围是[0,100]

8皇后问题(回溯)

在8*8国际象棋盘上,放置8个皇后,使得任意两个皇后都不会互相攻击,一共有多少种摆法?这就是著名的8皇后问题。
现在我们来尝试,在N*N的棋盘上,放置N个皇后,使得它们不会互相攻击。
皇后的走子规则是,沿着横、竖、两条对角线方向可以走任意步数。

输入
1个整数N

输出
一个整数,表示N皇后的不同解答个数

样例
输入复制
8
输出复制
92
提示
5≤N≤9

全排列(回溯)

输入正整数N,输出由1到N这N个数(N<=7)的所有排列,每行一个排列,数与数之间有一个空格,两个排列中,第一个数小的优先输出,第一个数相同࿰

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值