企业网站建设的三个核心问题,网上在线购物系统,5080电影电视剧大全,辽宁工程建设信息网站题目1#xff1a; 题目描述
输出自然数 1 到 n 所有不重复的排列,即 n 的全排列#xff0c;要求所产生的任一数字序列中不允许出现重复的数字。 输入格式
一个整数 n。 输出格式
由 1∼n1∼n1∼n 组成的所有不重复的数字序列#xff0c;每行一个序列。
每个数字保留 5 个…题目1 题目描述
输出自然数 1 到 n 所有不重复的排列,即 n 的全排列要求所产生的任一数字序列中不允许出现重复的数字。 输入格式
一个整数 n。 输出格式
由 1∼n1∼n1∼n 组成的所有不重复的数字序列每行一个序列。
每个数字保留 5 个场宽。 输入输出样例 输入
3
输出
1 2 3
1 3 2
2 1 3
2 3 1
3 1 2
3 2 1说明/提示
1≤n≤91≤n≤91≤n≤9
代码如下
#includebits/stdc.h
using namespace std;
int n;
int ans[15];//保存当前的方案
int use[15];//表示每个数是否被用过
void dfs(int x){//X表示当前搜索到那个数if(xn){//如果N位都搜索完了就输出方案并返回for(int i1;in;i)printf(% 5d,ans[i]);//输出方案 puts();return;}for(int i1;in;i)//从小到大枚举if(!use[i]){//判断这个数是否用过ans[x]i;//保存到方案中use[i]1;//标记这个数被使用了dfs(x1);//进行下一步搜索use[i]0;//撤销标记}
}
int main()
{scanf(%d,n);//输入dfs(1);//从第一个数开始搜索
}题目2
题目描述
已知 nnn 个整数 x1,x2,…,xnx_1,x_2,…,x_nx1,x2,…,xn以及111个整数kkk(knknkn)。从nnn个整数中任选kkk个整数相加可分别得到一系列的和。例如当n4,k3n4,k3n4,k3,444个整数分别为3,7,12,193,7,12,193,7,12,19时可得全部的组合与它们的和为
371222371222371222
371929371929371929
712193871219387121938
312193431219343121934。
现在要求你计算出和为素数共有多少种。
例如上例只有一种的和为素数371929371929371929。
解题思路 水题
代码如下
#include bits/stdc.h
using namespace std;
const int N 9999;
int a[N];
bool pd[N];
int haif[N];
int n, k, sum 0, ans 0;int f (int y) {if (y 1)return false;if (y 0)return false;for (int i 2; i sqrt(y); i) {if (y % i 0)return false;}return y;
}void dfs (int x, int d) {if (x k 1) {sum 0;for (int i 1; i k; i) {sum sum haif[i];}if (f(sum) ! 0)ans;return ;}for (int i d 1; i n; i) {if (!pd[i]) {pd[i] 1;haif[x] a[i];dfs(x 1, i);pd[i] 0;}}
}int main () {cin n k;for (int i 1; i n; i) {cin a[i];}dfs(1, 0);cout ans endl;return 0;
}