- 博客(10)
- 资源 (2)
- 收藏
- 关注
原创 并查集 算法模板 Java
public class UnionFindSet { public static int inf=100000; public static int fa[]; //基础版 public static void init(int n) { for(int i=1;i<=n;i++) { fa[i]=1; } } public static int find(int x) { if(fa[x]==x) { return x; } else { re
2022-04-05 21:00:06 161
原创 最优配餐(多源DFS/BFS) Java解法
最优配餐问题描述解题思路代码bfsdfs问题描述 栋栋最近开了一家餐饮连锁店,提供外卖服务。随着连锁店越来越多,怎么合理的给客户送餐成为了一个急需解决的问题。 栋栋的连锁店所在的区域可以看成是一个n×n的方格图(如下图所示),方格的格点上的位置上可能包含栋栋的分店(绿色标注)或者客户(蓝色标注),有一些格点是不能经过的(红色标注)。 方格图中的线表示可以行走的道路,相邻两个格点的距离为1。栋栋要送餐必须走可以行走的道路,而且不能经过红色标注的点。 送餐的主要成本体现在路上所花的时间
2022-03-03 22:49:59 1050
转载 二分查找模板
一、二分查找的框架int binarySearch(int[] nums, int target) { int left = 0, right = ...; while(...) { int mid = (right + left) / 2; if (nums[mid] == target) { ... } else if (nums[mid] < target) { left = ..
2022-03-03 21:06:35 96
原创 给定一个长度为 n 的非负整数序列 A ,求一个平均数最大的,长度不小于 L 的子段
题目描述给定一个长度为nnn的非负整数序列AAA,求一个平均数最大的,长度不小于LLL的子段。【输入形式】第 1 行用空格分隔的两个整数 nnn和LLL ;第 2 行到第n+1n+1n+1行每行一个数字,分别为nnn个非负整数,表示AiA_iAi 。【输出形式】输出一个整数,表示这个平均数的 1000倍。不用四舍五入,直接输出。【样例输入】10 664210385941【样例输出】6500【样例说明】选 10 3 8 5 9 4【数据范
2022-03-03 20:58:46 2077
原创 至多删除三个字符
至多删除三个字符问题描述输出形式解题思路代码问题描述给定一个全部由小写英文字母组成的字符串,允许你至多删掉其中 3 个字符,结果可能有多少种不同的字符串?输入形式输入在一行中给出全部由小写英文字母组成的、长度在区间[4,1000000]内的字符串。输出形式在一行中输出至多删掉其中 3 个字符后不同字符串的个数。样例输入ababcc样例输出25样例说明删掉 0 个字符得到 “ababcc”。删掉 1 个字符得到 “babcc”, “aabcc”,
2022-03-01 23:09:00 562 1
原创 KMP算法 Java实现
KMP算法public class KMP { public static int[] getNext(String t) { char p[]=t.toCharArray(); int next[]=new int[p.length]; next[0]=-1; int j=0,k=-1; while(j<p.length-1){ if(k==-1||p[j]==p[k]){ j++; k++; if(p[j]==p[k]) {
2021-11-29 15:52:24 168
原创 最小生成树算法模板 Java实现
Prim算法和Kruskal算法 Java实现Prim算法Kruskal算法Prim算法public class Prim { public static int inf=65535; public static int minval=0; public static void prim(int [][]map,int n) { int min,i,j,k; int visit[]=new int[n];//0表示未选择 ;1表示已选择 int lowcost[]=new int[
2021-11-25 19:35:04 575
原创 两条不重复的最大路径
传纸条 Codevs1169题目描述解题思路C++代码算法分析题目描述小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题。一次素质拓展活动中,班上同学安排做成一个m行n列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就无法直接交谈了。幸运的是,他们可以通过传纸条来进行交流。纸条要经由许多同学传到对方手里,小渊坐在矩阵的左上角,坐标(1,1),小轩坐在矩阵的右下角,坐标(m,n)。从小渊传到小轩的纸条只可以向下或者向右传递,从小轩传给小渊的纸条只可以向上或者向左传递。在活动进行中,小渊
2021-11-17 17:07:55 345
原创 二维最大子序列和
蓝桥杯-PREV26-最大子阵题目描述解题思路代码题目描述给定一个n*m的矩阵A,求A中的一个非空子矩阵,使这个子矩阵中的元素和最大。其中,A的子矩阵指在A中行和列均连续的一块。样例说明 取最后一列,和为10。数据规模和约定 对于50%的数据,1<=n, m<=50; 对于100%的数据,1<=n, m<=500,A中每个元素的绝对值不超过5000。输入 输入的第一行包含两个整数n, m,分别表示矩阵A的行数和列数。 接下来n行,每行m个整数
2021-11-17 15:38:11 376
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人