![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
蓝桥杯-算法训练
huangxiang360729
编程是一门技术也是门艺术
展开
-
蓝桥杯_算法训练_操作格子
这道题用到了数据结构中的线段树,没学习过线段树的同学可以去百度一下,我给你们推荐一下学习线段树的博客文章:http://blog.csdn.net/x314542916/article/details/7837276问题描述 有n个格子,从左到右放成一排,编号为1-n。 共有m次操作,有3种操作类型: 1.修改一个格子的权值, 2.求连续一段格子权值和, 3.求连续一段格子的最大值。 对原创 2016-03-15 18:52:26 · 2017 阅读 · 5 评论 -
蓝桥杯_算法训练_节点选择(用Dijkstra,Bellman-Ford,SPFA算法分别实现)
问题描述 有一棵 n个节点的树,树上每个节点都有一个正整数权值。 如果一个点被选择了,那么在树上和它相邻的点都不能被选择。 求选出的点的权值和最大是多少?输入格式 第一行包含一个整数 n 。 接下来的一行包含 n 个正整数,第 i 个正整数代表点 i 的权值。 接下来一共 n-1 行,每行描述树上的一条边。输出格式 输出一个整数,代表选出的点的权值和的最大值。 样例输入 5 1原创 2016-03-09 21:31:32 · 674 阅读 · 0 评论 -
蓝桥杯_算法训练_K好数
问题描述 如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数。 求L位K进制数中K好数的数目。例如K = 4,L = 2的时候,所有K好数为11、13、20、22、30、31、33 共7个。 由于这个数目很大,请你输出它对1000000007取模后的值。 输入格式 输入包含两个正整数,K和L。输出格式 输出一个整数,表示答案对1000000007取原创 2016-03-09 19:13:53 · 390 阅读 · 0 评论 -
蓝桥杯_算法训练_区间k大数查询
问题描述 给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个。 输入格式 第一行包含一个数n,表示序列长度。 第二行包含n个正整数,表示给定的序列。 第三个包含一个正整数m,表示询问个数。 接下来m行,每行三个数l,r,K,表示询问序列从左往右第l个数到第r个数中,从大往小第K大的数是哪个。序列元素从1开始标号。 输出格式 总共输出m行,每行一个数,表示询问的答案。原创 2016-03-08 18:09:45 · 477 阅读 · 0 评论 -
蓝桥杯_算法训练_ 最大最小公倍数
问题描述 已知一个正整数N,问从1~N中任选出三个数,他们的最小公倍数最大 可以为多少。 输入格式 输入一个正整数N。 输出格式 输出一个整数,表示你找到的最小公倍数。 样例输入 9 样例输出 504 数据规模与约定 1 <= N <= 10^6。import java.util.Scanner;/** * @author 翔 * */pu原创 2016-03-08 19:30:31 · 347 阅读 · 0 评论 -
蓝桥杯_算法训练_安慰奶牛(用Kruskal、Prim算法分别实现)
问题描述 Farmer John变得非常懒,他不想再继续维护供奶牛之间供通行的道路。 道路被用来连接N个牧场,牧场被连续地编号为1到N。每一个牧场都是一个奶牛的家。 FJ计划除去P条道路中尽可能多的道路,但是还要保持牧场之间 的连通性。 你首先要决定那些道路是需要保留的N-1条道路。 第j条双向道路连接了牧场Sj和Ej(1 <= Sj <= N; 1 <= Ej <= N; Sj != E原创 2016-03-14 19:46:05 · 690 阅读 · 0 评论 -
蓝桥杯_算法训练_数字三角形
问题描述 (图3.1-1)示出了一个数字三角形。 请编一个程序计算从顶至底的某处的一条路 径,使该路径所经过的数字的总和最大。 ●每一步可沿左斜线向下或右斜线向下走; ●1<三角形行数≤100; ●三角形中的数字为整数0,1,…99; 输入格式 文件中首先读到的是三角形的行数。 接下来描述整个三角形 输出格式 最大总和(整数) 样例输入 5 7原创 2016-03-17 12:51:53 · 619 阅读 · 0 评论 -
蓝桥杯_算法训练_最大的算式
问题描述 题目很简单,给出N个数字,不改变它们的相对位置,在中间加入K个乘号和N-K-1个加号,(括号随便加)使最终结果尽量大。因为乘号和加号一共就是N-1个了,所以恰好每两个相邻数字之间都有一个符号。例如: N=5,K=2,5个数字分别为1、2、3、4、5,可以加成: 1*2*(3+4+5)=24 1*(2+3)*(4+5)=45 (1*2+3)*(4+5)=45原创 2016-03-16 23:48:35 · 411 阅读 · 0 评论 -
蓝桥杯_算法训练_2的次幂表示(递归)
问题描述 任何一个正整数都可以用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^0 (2^1用2表示) 3=2+2^原创 2016-03-16 18:31:44 · 446 阅读 · 0 评论 -
蓝桥杯_算法训练_字串统计(用HashMap实现)
问题描述 给定一个长度为n的字符串S,还有一个数字L,统计长度大于等于L的出现次数最多的子串(不同的出现可以相交), 如果有多个,输出最长的,如果仍然有多个,输出第一次出现最早的。输入格式 第一行一个数字L。 第二行是字符串S。 L大于0,且不超过S的长度。输出格式 一行,题目要求的字符串。 输入样例1: 4 bbaabbaaaaa 输出原创 2016-03-16 12:15:31 · 494 阅读 · 0 评论 -
蓝桥杯_算法训练_逆序对
问题描述 Alice是一个让人非常愉跃的人!他总是去学习一些他不懂的问题,然后再想出许多稀奇古怪的题目。 这几天,Alice又沉浸在逆序对的快乐当中,他已近学会了如何求逆序对对数,动态维护逆序对对数等等题目, 他认为把这些题让你做简直是太没追求了,于是,经过一天的思考和完善,Alice终于拿出了一道他认为差不多的题目: 有一颗2n-1个节点的二叉树,它有恰好n个叶子节点,每个节点上写了一个整原创 2016-03-15 10:13:19 · 4528 阅读 · 2 评论