logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

信息学奥赛一本通 1255:迷宫问题 广度优先搜索算法

它表示一个迷宫,其中的1表示墙壁,0表示可以走的路,只能横着走或竖着走,不能斜着走,要求编程序找出从左上角到右下角的最短路线。时间限制: 1000 ms内存限制: 65536 KB。一个5 × 5的二维数组,表示一个迷宫。左上角到右下角的最短路径,格式如样例所示。

#宽度优先#算法#c++
信息学奥赛一本通 数据结构 1332:【例2-1】周末舞会 第二章 队列

假设在周末舞会上,男士们和女士们进入舞厅时,各自排成一队。跳舞开始时,依次从男队和女队的队头上各出一人配成舞伴。规定每个舞曲能有一对跳舞者。若两队初始人数不相同,则较长的那一队中未配对者等待下一轮舞曲。现要求写一个程序,模拟上述舞伴配对问题。时间限制: 1000 ms内存限制: 65536 KB。1332:【例2-1】周末舞会。

#数据结构#算法#c++
信息学奥赛一本通 数据结构 1336:【例3-1】找树根和孩子 第三章 树

时间限制: 1000 ms内存限制: 65536 KB。以下m行:每行两个结点x和y,表示y是x的孩子(x,y≤1000)。给定一棵树,输出树的根root,孩子最多的结点max以及他的孩子。第一行:n(结点个数≤100),m(边数≤200)。第三行:max的孩子(按编号由小到输出)。1336:【例3-1】找树根和孩子。第二行:孩子最多的结点max;第一行:树根:root;

#数据结构#算法#c++
信息学奥赛一本通 数据结构 1361:产生数(Produce) 第二章 队列

上面的整数234经过变换后可能产生出的整数为(包括原数)234,534,264,564共4种不同的产生数。求经过任意次的变换(0次或多次),能产生出多少个不同的整数。仅要求输出不同整数个数。时间限制: 1000 ms内存限制: 65536 KB。给出一个整数n(n≤2000)和k个变换规则(k≤15)。格式为一个整数(满足条件的整数个数)。1361:产生数(Produce)① 1个数字可以变换成另

#数据结构#算法#c++
信息学奥赛一本通 1256:献给阿尔吉侬的花束 广度优先搜索算法

阿尔吉侬是一只聪明又慵懒的小白鼠,它最擅长的就是走各种各样的迷宫。今天它要挑战一个非常大的迷宫,研究员们为了鼓励阿尔吉侬尽快到达终点,就在终点放了一块阿尔吉侬最喜欢的奶酪。字符S表示阿尔吉侬所在的位置,字符E表示奶酪所在的位置,字符#表示墙壁,字符.表示可以通行。阿尔吉侬在1个单位时间内可以从当前的位置走到它上下左右四个方向上的任意一个位置,但不能走出地图边界。每组数据的输出结果占一行。每一组数据

#宽度优先#算法#c++
信息学奥赛一本通 1329:【例8.2】细胞 广度优先搜索算法

一矩形阵列由数字0到9组成,数字1到9代表细胞,细胞的定义为沿细胞数字上下左右还是细胞数字则为同一细胞,求给定矩形阵列的细胞个数。解析:广度优先搜索算法,遍历矩阵中所有位置,从非零位置开始广度优先搜索,针对四个方向,对于搜索到的细胞位置清零,得到答案。时间限制: 1000 ms内存限制: 65536 KB。1329:【例8.2】细胞。第一行为矩阵的行n和列m;下面为一个n×m的矩阵。

#宽度优先#算法#c++
信息学奥赛一本通 1253:抓住那头牛 广度优先搜索算法

农夫知道一头牛的位置,想要抓住它。农夫和牛都位于数轴上,农夫起始位于点N(0≤N≤100000),牛位于点K(0≤K≤100000)。假设牛没有意识到农夫的行动,站在原地不动。农夫最少要花多少时间才能抓住牛?时间限制: 1000 ms内存限制: 65536 KB。1、从X移动到X−1或X+1,每次移动花费一分钟。一个整数,农夫抓到牛所要花费的最小分钟数。2、从X移动到2×X,每次移动花费一分钟。1

#宽度优先#算法#数据结构
信息学奥赛一本通 1220:单词接龙 搜索与回溯算法

单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的“龙”(每个单词都最多在“龙”中出现两次),在两个单词相连时,其重合部分合为一部分,例如beast和astonish,如果接成一条龙则变为beastonish,另外相邻的两部分不能存在包含关系,例如at和atide间不能相连。你可以假定以此字母开头的“龙”一定存在。时间限制:

#算法#深度优先#c++
信息学奥赛一本通 1212:LETTERS 搜索与回溯算法

给出一个roe×col的大写字母矩阵,一开始的位置为左上角,你可以向上下左右四个方向移动,并且不能移向曾经经过的字母。问最多可以经过几个字母。时间限制: 1000 ms内存限制: 65536 KB。第一行,输入字母矩阵行数R和列数S,1≤R,S≤20。最多能走过的不同字母的个数。接着输出R行S列字母矩阵。

#算法#c++#深度优先
信息学奥赛一本通 1221:分成互质组 搜索与回溯算法

给定n个正整数,将它们分组,使得每组中任意两个数互质。至少要分成多少个组?时间限制: 1000 ms内存限制: 65536 KB。第一行是一个正整数n。1 ≤ n ≤ 10。第二行是n个不大于10000的正整数。一个正整数,即最少需要的组数。1221:分成互质组。

#算法#c++#深度优先
    共 81 条
  • 1
  • 2
  • 3
  • 9
  • 请选择