![](https://img-blog.csdnimg.cn/20191218153515972.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法专栏
文章平均质量分 84
leetcode、蓝桥杯算法训练
generous~
当代小程序员
展开
-
快速幂取模
flag蓝桥杯第28天题目介绍问题描述 有一天,JOE终于不能忍受计算ab%c这种平凡的运算了。所以他决定要求你写一个程序,计算ab%c。提示:若b为奇数,,ab=(a(b/2))2*a,否则ab=(a(b/2))2。输入格式 三个非负整数a,b,c;输出格式 一个整数ans,表示a^b%c;样例输入7 2 5样例输出4数据规模和约定 30% a <= ...原创 2020-02-03 23:19:52 · 185 阅读 · 0 评论 -
计算行列式
flag蓝桥杯第27天题目介绍问题描述 给定一个N×N的矩阵A,求|A|。输入格式 第一行一个正整数N。 接下来N行,每行N个整数,第i行第j个数字表示A[i][j]。输出格式 一行,输出|A|。样例输入21 23 4样例输出-2数据规模和约定 0<N≤6 -10≤A[i][j]≤10思路递归的思路,将高维化为低维。二维的时候用对角线乘积...原创 2020-02-02 21:20:03 · 621 阅读 · 0 评论 -
关联矩阵
flag蓝桥杯第26天题目介绍问题描述 有一个n个结点m条边的有向图,请输出他的关联矩阵。输入格式 第一行两个整数n、m,表示图中结点和边的数目。n<=100,m<=1000。 接下来m行,每行两个整数a、b,表示图中有(a,b)边。 注意图中可能含有重边,但不会有自环。输出格式 输出该图的关联矩阵,注意请勿改变边和结点的顺序。样例输入5 91 2...原创 2020-01-31 19:16:08 · 8467 阅读 · 0 评论 -
双十一抢购
flag蓝桥杯第25天题目介绍问题描述 一年一度的双十一又来了,某网购网站又开始了半价销售的活动。 小G打算在今年的双十一里尽情地购物,以享受购买的极度快感,她已经列好了她想买的物品的列表。 当然小G并不是出身富贵家庭,所以她网银里的钱只是一个有限的整数S(单位:元)。 这次抢购她打算遵循这三个原则选择每一个物品: 1.先买能“赚”最多的; 2.在“赚”一样多的情况下...原创 2020-01-30 23:18:17 · 904 阅读 · 0 评论 -
未名湖边的烦恼
flag蓝桥杯第24天题目介绍问题描述 每年冬天,北大未名湖上都是滑冰的好地方。北大体育组准备了许多冰鞋,可是人太多了,每天下午收工后,常常一双冰鞋都不剩。 每天早上,租鞋窗口都会排起长龙,假设有还鞋的m个,有需要租鞋的n个。现在的问题是,这些人有多少种排法,可以避免出现体育组没有冰鞋可租的尴尬场面。(两个同样需求的人(比如都是租鞋或都是还鞋)交换位置是同一种排法)输入格式 两...原创 2020-01-21 18:52:23 · 145 阅读 · 0 评论 -
罗马数字转阿拉伯数字
罗马数字转阿拉伯数字flag问题描述思路关键代码测试flag软件学院大三党,每日一道算法题第一天问题描述罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符数值I1V5X10L50C100D500M1000例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X +...原创 2019-10-09 21:48:43 · 252 阅读 · 0 评论 -
朋友圈
flag软件学院大三党,每日一道算法题,第九天题目介绍班上有 N 名学生。其中有些人是朋友,有些则不是。他们的友谊具有是传递性。如果已知 A 是 B 的朋友,B 是 C 的朋友,那么我们可以认为 A 也是 C 的朋友。所谓的朋友圈,是指所有朋友的集合。给定一个 N * N 的矩阵 M,表示班级中学生之间的朋友关系。如果M[i][j] = 1,表示已知第 i 个和 j 个学生互为朋友关系,否...原创 2019-10-17 19:34:54 · 289 阅读 · 1 评论 -
删除排序链表中的重复元素
flag软件学院大三党,每天一道算法题,第十二天题目介绍给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。思路采用链表的常规删除方式,将current.next连接到current.next.next关键代码 public ListNode deleteDuplicates(ListNode head) { if(head==null) ...原创 2019-10-20 18:57:44 · 78 阅读 · 0 评论 -
二叉树的锯齿形层次遍历
flag软件学院大三党,每天一道算法题,第十八天题目介绍给定一个二叉树,返回其节点值的锯齿形层次遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。思路迭代:采用经过加工的广度遍历,引入depth层数,逐层将元素放入链表(奇数层插入到尾部,偶数层插入到头部),用队列的长度代表每层的元素个数,即内层循环的次数,再将下一层元素放入队列。递归:类似深度优先遍历...原创 2019-10-26 15:44:57 · 2360 阅读 · 1 评论 -
分割数组为连续子序列
flag软件学院大三党,每天一道算法题,第34天题目介绍输入一个按升序排序的整数数组(可能包含重复数字),你需要将它们分割成几个子序列,其中每个子序列至少包含三个连续整数。返回你是否能做出这样的分割?思路我们把 3 个或更多的连续数字称作 chain。我们从左到右考虑每一个数字 x,如果 x 可以被添加到当前的 chain 中,我们将 x 添加到 chain 中,这一定会比创建一个新...原创 2019-11-13 19:58:52 · 418 阅读 · 0 评论 -
二叉搜索树的最小绝对差
flag软件学院大三党,每天一道算法题,第35天题目介绍给定一个所有节点为非负值的二叉搜索树,求树中任意两节点的差的绝对值的最小值。背景知识二叉搜索(排序)树或者是一棵空树,或者是具有下列性质的二叉树:(1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值;(2)若右子树不空,则右子树上所有结点的值均大于它的根结点的值;(3)左、右子树也分别为二叉排序树;(4)没有键值...原创 2019-11-13 21:30:19 · 228 阅读 · 0 评论 -
十六进制转八进制
flag蓝桥杯第一天import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner input=new Scanner(System.in); String s=input.next(); S...原创 2019-11-16 23:33:18 · 330 阅读 · 0 评论 -
十六进制转十进制
flag蓝桥杯第二天题目问题描述 从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。 注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。样例输入FFFF样例输出65535代码import java.util.Scanner;public class Main { public static void ma...原创 2019-11-20 20:47:56 · 92 阅读 · 0 评论 -
Fibonacci数列求余数
flag蓝桥杯第6天题目介绍①问题描述Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。输入格式输入包含一个整数n。输出格式输出一行,包含一个整数,表示Fn除以10007的余数。说明:在本题中,答案是要求Fn除以10007的余数,因此我们只要能算出这个余数即可,而不需要先...原创 2019-11-25 19:20:33 · 604 阅读 · 0 评论 -
最大最小公倍数
flag蓝桥杯第七天题目介绍问题描述已知一个正整数N,问从1~N中任选出三个数,他们的最小公倍数最大可以为多少。输入格式输入一个正整数N。输出格式输出一个整数,表示你找到的最小公倍数。样例输入9样例输出504数据规模与约定1 <= N <= 106。思路首先声明几个概念:两个非0相邻自然数的最小公倍数是它们的乘积相邻两个奇数的最小公倍数是它们的乘积...原创 2019-11-26 21:11:55 · 203 阅读 · 0 评论 -
杨辉三角
flag蓝桥杯第九天题目介绍问题描述杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。下面给出了杨辉三角形的前4行:11 11 2 11 3 3 1给出n,输出它的前n行。输入格式输入包含一个数n。输出格式输出杨辉三角形的前n行。每一行从这一行的第一个数开始依次输出,中间使用一个...原创 2019-11-27 20:45:27 · 77 阅读 · 0 评论 -
字母图形
flag蓝桥杯第十天题目介绍问题描述利用字母可以组成一些美丽的图形,下面给出了一个例子:ABCDEFGBABCDEFCBABCDEDCBABCDEDCBABC这是一个5行7列的图形,请找出这个图形的规律,并输出一个n行m列的图形。输入格式输入一行,包含两个整数n和m,分别表示你要输出的图形的行数的列数。输出格式输出n行,每个m个字符,为你的图形。样例输入5 7样例...原创 2019-12-01 20:14:17 · 98 阅读 · 0 评论 -
十进制转十六进制java
flag蓝桥杯第11天题目介绍问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。 给出一个非负整数,将它表示成十六进...原创 2019-12-02 21:27:50 · 423 阅读 · 0 评论 -
大等于n的最小完全平方数
flag蓝桥杯第12天题目介绍问题描述 输出大等于n的最小的完全平方数。 若一个数能表示成某个自然数的平方的形式,则称这个数为完全平方数 Tips:注意数据范围输入格式 一个整数n输出格式 大等于n的最小的完全平方数样例输入71711样例输出71824数据规模和约定 n是32位有符号整数思路带入实例进行分析:1.比如5,开方是2.236,结果应该是...原创 2019-12-04 21:37:01 · 819 阅读 · 1 评论 -
大数阶乘
flag蓝桥杯第14天题目介绍一个整数n的阶乘可以写成n!,它表示从1到n这n个整数的乘积。阶乘的增长速度非常快,例如,13!就已经比较大了,已经无法存放在一个整型变量中;而35!就更大了,它已经无法存放在一个浮点型变量中。因此,当n比较大时,去计算n!是非常困难的。幸运的是,在本题中,我们的任务不是去计算n!,而是去计算n!最右边的那个非0的数字是多少。例如,5!=12345=120,因此...原创 2019-12-08 18:19:46 · 238 阅读 · 0 评论 -
蓝桥杯-K好数
flag蓝桥杯第13天题目介绍问题描述如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数。求L位K进制数中K好数的数目。例如K = 4,L = 2的时候,所有K好数为11、13、20、22、30、31、33 共7个。由于这个数目很大,请你输出它对1000000007取模后的值。输入格式输入包含两个正整数,K和L。输出格式输出一个整数,表示答案...原创 2019-12-05 20:44:17 · 200 阅读 · 1 评论 -
出现次数最多的整数
flag蓝桥杯第16天题目介绍问题描述 编写一个程序,读入一组整数,这组整数是按照从小到大的顺序排列的,它们的个数N也是由用户输入的,最多不会超过20。然后程序将对这个数组进行统计,把出现次数最多的那个数组元素值打印出来。如果有两个元素值出现的次数相同,即并列第一,那么只打印比较小的那个值。 输入格式:第一行是一个整数N,N £ 20;接下来有N行,每一行表示一个整数,并且按照从...原创 2019-12-10 20:31:17 · 160 阅读 · 0 评论 -
矩阵乘法
flag蓝桥杯第17天题目介绍问题描述 输入两个矩阵,分别是ms,sn大小。输出两个矩阵相乘的结果。输入格式 第一行,空格隔开的三个正整数m,s,n(均不超过200)。 接下来m行,每行s个空格隔开的整数,表示矩阵A(i,j)。 接下来s行,每行n个空格隔开的整数,表示矩阵B(i,j)。输出格式 m行,每行n个空格隔开的整数,输出相乘後的矩阵C(i,j)的值。样例输...原创 2019-12-11 17:48:46 · 126 阅读 · 0 评论 -
2的次幂表示
flag蓝桥杯第18天题目介绍问题描述 任何一个正整数都可以用2进制表示,例如:137的2进制表示为10001001。 将这种2进制表示写成2的次幂的和的形式,令次幂高的排在前面,可得到如下表达式:137=2^7 +2 ^3+ 2^0 现在约定幂次用括号来表示,即a^b表示为a(b) 此时,137可表示为:2(7)+2(3)+2(0) 进一步:7=2^2 +2+2...原创 2019-12-12 21:17:57 · 538 阅读 · 0 评论 -
字串统计
flag蓝桥杯第19天题目介绍问题描述 给定一个长度为n的字符串S,还有一个数字L,统计长度大于等于L的出现次数最多的子串(不同的出现可以相交),如果有多个,输出最长的,如果仍然有多个,输出第一次出现最早的。输入格式 第一行一个数字L。 第二行是字符串S。 L大于0,且不超过S的长度。输出格式 一行,题目要求的字符串。输入样例1: 4 bbaabbaaaaa...原创 2019-12-13 22:54:36 · 152 阅读 · 0 评论 -
最短路径——SPFA算法(蓝桥杯试题集)
本文链接:https://blog.csdn.net/sm9sun/article/details/53286714*对于本题的floyd题解请跳转:http://blog.csdn.net/sm9sun/article/details/53285870题目链接:http://lx.lanqiao.cn/problem.page?gpid=T15问题描述给定一个n个顶点,m条边的有向图(...转载 2019-12-15 17:33:27 · 161 阅读 · 0 评论 -
Anagrams问题
flag蓝桥杯第21天题目介绍问题描述 Anagrams指的是具有如下特性的两个单词:在这两个单词当中,每一个英文字母(不区分大小写)所出现的次数都是相同的。例如,“Unclear”和“Nuclear”、“Rimon”和“MinOR”都是Anagrams。编写一个程序,输入两个单词,然后判断一下,这两个单词是否是Anagrams。每一个单词的长度不会超过80个字符,而且是大小写无关的。...原创 2019-12-17 19:21:17 · 265 阅读 · 0 评论