01 2022 档案
摘要:题1:area 描述:编程计算由“1”号围成的下列图形的面积。面积计算方法是统计“1”所围成的闭合曲线 中水平线和垂直线交点的数目。如下图所示,在 10*10 的二维数组中,有“1”围住了15个点, 因此面积为15。 【样例输入】 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1
阅读全文
摘要:题目1:迷宫问题 问题描述:设有一个N*N(2<=N<10)方格的迷宫,入口和出口分别在左上角和右上角。迷宫格子中分别放0和1,0表示可通,1表示不能,入口和出口处肯定是0。迷宫走的规则如下: 从某点开始,有八个方向可走,前进方格中数字为0时表示可通过,为1时表示不可通过,要另找路径。找出所有从入口
阅读全文
摘要:题目:从三个元素的集合[A,B,C]中选取元素生成一个N个字符组成的序列,使得没有两个相邻字的子序列(长度=2)相同;对于由键盘输入的N(1<=N<=12),求出满足条件的N个字符的所有序列和其总数 参考数据: 输入:4 输出:72 注意:只限制相邻子序列 程序: #include<bits/std
阅读全文
摘要:题目:1~n个自然数中选择r个数的所有选择方案(顺序) 方法:深搜 程序: #include<bits/stdc++.h>using namespace std;int n,r,A[21],b[21]={0};void print(){ for(int i=1;i<=r;i++){ printf("
阅读全文
摘要:题目:1~n个自然数的全排列 算法:深搜 程序: #include<bits/stdc++.h>using namespace std;int n,a[10],b[10]={0};void print(){ for(int i=1;i<=n;i++){ printf("%5d",a[i]); } p
阅读全文
摘要:题目:从n个数中选取r个数,列出所有排列(与顺序无关) 思路:一个一个选,做好标记不重复,不遗漏 程序1:递归回溯: #include<bits/stdc++.h>using namespace std;bool b[10001]={0};int num=0,a[10001]={0},n,r;voi
阅读全文
摘要:题目:T组数据,n个人,第n个人体重w[n],分成两组,两组人数最大差1,求两组体重差绝对值最小值 思路:一共分两组,设第一组体重和为w1,第二组为w2,则w1+w2=W,|w1-w2|=|2*w1-W|。所以只需要找出其中一组总重量的二倍与全部人总重量的差的绝对值的最小值就可以。所以只需要求其中一
阅读全文
摘要:题目:N*N的棋盘上放N个皇后使这些皇后互相不能攻击,即每个皇后的同行、同列、同对角线上没有别的皇后 思路:因为每行只能放一个皇后,所以皇后的位置可以不用二维数组表达,而是通过A[x]的值来表达第x行的皇后的位置 处理问题前可以先把模块化的东西处理好: ·输出方案: void print(){ su
阅读全文