![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法题
请刷新后重试
这个作者很懒,什么都没留下…
展开
-
环形石子合并(java)
【题目描述】在一个圆形操场的四周摆放着N堆石子。现要将石子有次序地合并成一堆。规定每次只能选相邻的2堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的得分。计算出将N堆石子合并成一堆的最小得分和最高得分。【输入】第一行为一个正整数N (2≤N≤100);以下N行,每行一个正整数,小于10000,分别表示第i堆石子的个数(1≤i≤N)。【输出】两行第一行一个整数,表示最小得分第二行一个整数,表示最大得分【输入样例】713781621418【输出样例】239376.原创 2020-08-30 17:09:52 · 307 阅读 · 0 评论 -
线形石子合并(java)
【题目描述】在一个操场上一排地摆放着N堆石子。现要将石子有次序地合并成一堆。规定每次只能选相邻的2堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的得分。计算出将N堆石子合并成一堆的最小得分和最高得分。【输入】第一行为一个正整数N (2≤N≤100);以下N行,每行一个正整数,小于10000,分别表示第i堆石子的个数(1≤i≤N)。【输出】两行第一行一个整数,表示最小得分第二行一个整数,表示最大得分【输入样例】713781621418【输出样例】239365.原创 2020-08-30 17:02:51 · 238 阅读 · 0 评论 -
数字金字塔(java)
【题目描述】观察下面的数字金字塔。写一个程序查找从最高点到底部任意处结束的路径,使路径经过数字的和最大。每一步可以从当前点走到左下方的点也可以到达右下方的点。在上面的样例中,从13到8到26到15到24的路径产生了最大的和86。【输入】第一个行包含R(1≤ R≤1000),表示行的数目。后面每行为这个数字金字塔特定行包含的整数。所有的被供应的整数是非负的且不大于100。【输出】单独的一行,包含那个可能得到的最大的和。【输入样例】51311 812 7 266 14 15 .原创 2020-08-30 03:12:19 · 1452 阅读 · 1 评论 -
移动字母(java)
题目描述2x3=6个方格中放入ABCDE五个字母,右下角的那个格空着。如下图所示。A B CD E 和空格子相邻的格子中的字母可以移动到空格中,比如,图中的C和E就可以移动,移动后的局面分别是:A BD E C和A B CD E为了表示方便,我们把6个格子中字母配置用一个串表示出来,比如上边的两种局面分别表示为:ABDECABCDE题目的要求是:请编写程序,由用户输入若干表示局面的串,程序通过计算,输出是否能通过对初始状态经过若干次移动到达该状态。可以实现输出1,否则输出0.原创 2020-08-28 20:38:25 · 755 阅读 · 0 评论 -
营救天使(java)
题目描述天使被恶魔抓住,关在N行M列的矩阵的方格中,我们现在要从起始方格出发,去营救天使。我们每次只能在矩阵中往上或往下或往左或往右移动一格,且需耗时1秒。有些方格中有障碍物,不能进入;有些方格中有小鬼守卫,把它杀死还需另外耗时1秒。我们需要计算,到达天使所在方格的最少秒数。输入第1行是2个整数N、M,分别表示矩阵的行数和列数。接下去是N行,每行M个字符,其中.表示可以进入的普通方格,x表示有小鬼守卫的方格,#表示有障碍物的方格,r表示起始方格,a表示天使所在方格。输出如果能够营救,输出最少秒.原创 2020-08-28 19:29:44 · 296 阅读 · 0 评论 -
胜利大逃亡(java)
题目描述Ignatius被魔王抓走了,有一天魔王出差去了,这可是Ignatius逃亡的好机会.魔王住在一个城堡里,城堡是一个ABC的立方体,可以被表示成A个B*C的矩阵,刚开始Ignatius被关在(0,0,0)的位置,离开城堡的门在(A-1,B-1,C-1)的位置,现在知道魔王将在T分钟后回到城堡,Ignatius每分钟能从一个坐标走到相邻的六个坐标中的其中一个.现在给你城堡的地图,请你计算出Ignatius能否在魔王回来前离开城堡(只要走到出口就算离开城堡,如果走到出口的时候魔王刚好回来也算逃亡成.原创 2020-08-28 18:47:50 · 261 阅读 · 0 评论 -
马跳的步数(java)
题目描述8*8的国际象棋棋盘上,行号为a到h,列号为1到8,根据马的起始位置和目标位置,请你编程计算马跳的最小步数。输入若干行,每行包含4个字符,前2个字符表示起始位置的行号与列号,后2个字符表示目标位置的行号与列号。最后一行的为i0i0(这行不需要计算马跳的步数)。输出若干行整数,对每行输入,输出一个整数,表示马跳的最小步数。样例输入e2e4a1b2b2c3a1h8a1h7h8a1b1c3f6f6i0i0样例输出24265610思路从起始位置开始沿着.原创 2020-08-28 18:14:50 · 541 阅读 · 0 评论 -
第十届蓝桥杯大赛软件类省赛 Java 大学 B 组 题目及解析
试题 E: 迷宫本题总分:15 分【问题描述】下图给出了一个迷宫的平面图,其中标记为 1 的为障碍,标记为 0 的为可 以通行的地方。010000000100001001110000迷宫的入口为左上角,出口为右下角,在迷宫中,只能从一个位置走到这> 个它的上、下、左、右四个方向之一。对于上面的迷宫,从入口开始,可以按DRRURRDDDR 的顺序通过迷宫, 一共 10 步。其中> D、U、L、R 分别表示向下、向上、向左、向右走。 对于下面这个更复杂的迷宫(30 行 50 列).原创 2020-08-25 19:40:49 · 642 阅读 · 8 评论 -
山峰和山谷(java)
标题【题目描述】给定一个 n×n 的网格状地图,每个方格 (i,j)有一个高度 wij 。如果两个方格有公共顶点,则它们是相邻的。定义山峰和山谷如下:均由地图上的一个连通块组成;所有方格高度都相同;周围的方格(即不属于山峰或山谷但与山峰或山谷相邻的格子)高度均大于山谷的高度,或小于山峰的高度。求地图内山峰和山谷的数量。特别地,如果整个地图方格的高度均相同,则整个地图既是一个山谷,也是一个山峰。【输入】第一行一个整数n(2≤n≤1000),表示地图的大小。接下来 n 行每行 n 个整数.原创 2020-08-25 16:45:36 · 746 阅读 · 0 评论 -
马的遍历(java)
题目描述有一个n*m的棋盘(1<n,m<=400),在某个点上有一个马,要求你计算出马到达棋盘上任意一个点最少要走几步输入格式:一行四个数据,棋盘的大小和马的坐标输出格式:一个n*m的矩阵,代表马到达某个点最少要走几步(左对齐,宽5格,不能到达则输出-1)输入样例:3 3 1 1输出样例:0 3 23 -1 12 1 4思路从起始点开始沿马能走的八个方向广搜即可,如果超过棋盘的范围或是已访问过的坐标就不再访问,每访问一个坐标将步长记.原创 2020-08-25 15:04:03 · 823 阅读 · 2 评论 -
流感传染(java)
标题【题目描述】有一批易感人群住在网格状的宿舍区内,宿舍区为n*n的矩阵,每个格点为一个房间,房间里可能住人,也可能空着。在第一天,有些房间里的人得了流感,以后每天,得流感的人会使其邻居传染上流感,(已经得病的不变),空房间不会传染。请输出第m天得流感的人数。标题【输入】第一行一个数字n,n不超过100,表示有n*n的宿舍房间。接下来的n行,每行n个字符,’.’表示第一天该房间住着健康的人,’#’表示该房间空着,’@’表示第一天该房间住着得流感的人。接下来的一行是一个整数m,m不超过100。【.原创 2020-08-25 00:22:56 · 411 阅读 · 0 评论 -
细胞(java)
【题目描述】一矩形阵列由数字0到9组成,数字1到9代表细胞,细胞的定义为沿细胞数字上下左右还是细胞数字则为同一细胞,求给定矩形阵列的细胞个数。如下阵列,有4个细胞:4 100234500067103456050020456006710000000089【输入】第一行为矩阵的行n和列m;下面为一个n×m的矩阵。【输出】细胞个数。【输入样例】4 100234500067103456050020456006710000000089【输出样例】4思路将矩阵从头到尾遍历一.原创 2020-08-25 00:18:40 · 245 阅读 · 0 评论 -
Knight Moves(走马问题 java)
【题目描述】输入n代表有个n×n的棋盘,输入开始位置的坐标和结束位置的坐标,问一个骑士朝棋盘的八个方向走马字步,从开始坐标到结束坐标可以经过多少步。【输入】首先输入一个n,表示测试样例的个数。每个测试样例有三行。第一行是棋盘的大小L(4≤L≤300);第二行和第三行分别表示马的起始位置和目标位置(0…L−1)。【输出】马移动的最小步数,起始位置和目标位置相同时输出0。【输入样例】380 07 01000 030 50101 11 1【输出样例】5280思路.原创 2020-08-25 00:12:04 · 760 阅读 · 0 评论 -
抓住那头牛(java)
【题目描述】农夫知道一头牛的位置,想要抓住它。农夫和牛都位于数轴上,农夫起始位于点N(0≤N≤100000),牛位于点K(0≤K≤100000)。农夫有两种移动方式:1、从X移动到X-1或X+1,每次移动花费一分钟2、从X移动到2*X,每次移动花费一分钟假设牛没有意识到农夫的行动,站在原地不动。农夫最少要花多少时间才能抓住牛?【输入】两个整数,N和K。【输出】一个整数,农夫抓到牛所要花费的最小分钟数。【输入样例】5 17【输出样例】4思路从+1、-1、*2三个方向进行广搜即可.原创 2020-08-25 00:04:40 · 301 阅读 · 0 评论