摘要:
初始化: n个下表对应n个集合,根节点的特征是父节点就是其本身。 for(int i = 1; i ⇐ n; i++) p[i] = i; M操作:如果两个元素在同一个集合中,什么也不做,否则将两个集合合并; Q操作:两个集合在同一个集合回复“Yes”,否则回复“No”; 核心思想:(1)两个集合合 阅读全文
摘要:
1094 谷歌的招聘 (20分) 本题要求你编程解决一个更通用的问题:从任一给定的长度为 L 的数字中,找出最早出现的 K 位连续数字所组成的素数。 输入格式: 输入在第一行给出 2 个正整数,分别是 L(不超过 1000 的正整数,为数字长度)和 K(小于 10 的正整数)。接下来一行给出一个长度 阅读全文
摘要:
#include #include #include using namespace std; const int maxn = 100; struct node{ int x,y; int step; }S,T,Node; int n,m;//n为行,m为列 char maze[maxn][max 阅读全文
摘要:
/*void BFS(int s){ queue q; q.push(s); while(!q.empty()){ //取出队首元素top; //访问队首元素top; //将队首元素出队 //将top的下一层结点中未曾入队的结点全部入队,并设置为已入队; } } 步骤: (1) 定义队列q,并将起点 阅读全文
摘要:
题目描述 一个如下的 6 \times 66×6 的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。 上面的布局可以用序列 2\ 4\ 6\ 1\ 3\ 52 4 6 1 3 5 来描述,第 ii 个数字表示在第 ii 行的 阅读全文
摘要:
去年,搞竞赛的同学给我看了这题,觉得挺有意思的,但是根本不知道分治是啥,所以作罢。不久前在写组合数问题P2822时,尽管我用了题解里的递推公式,但还是WA。于是我想把杨辉三角对2取模输出看下结果,这是12行内的结果: 1 1 1 1 0 1 1 1 1 1 1 0 0 0 1 1 1 0 0 1 1 阅读全文
摘要:
/* 建立数组f。f[i]表示i个数的全部可能性。f[0]=1,f[1]=1; 设x为当前出栈序列的最后一个,则x有n种取值 由于x是最后一个出栈的,所以可以将已经出栈的数分成两部分 1.比x小 2.比x大 比x小的数有x-1个,所以这些数全部出栈可能为f[x-1] 解释:因为进栈顺序从小到大排列, 阅读全文
摘要:
#include<bits/stdc++.h> using namespace std; char s[110][110];//地图 int n,m,sum;//n行,m列 int dir[4][2] = {{1,0},{0,1},{-1,0},{0,-1}};//右、上、左、下 int vis[1 阅读全文