
算法
文章平均质量分 79
雷八天
我一直认为用心、踏实是做好每一件事的基础,是取得成功必不可少的条件,而热情、真诚是待人必不可少的条件,也是取得良好人际关系的必要条件。我相信世上无难事只怕有心人,积极乐观、自信细心的性格让我在工作中表现突出,也相信这些品质可以为我今后的工作带来些许优势,让我以更踏实地心态去完成好每一件工作
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
蓝桥杯 历届试题 剪格子
问题描述 如下图所示,3 x 3 的格子中填写了一些整数。 +--*--+--+ |10* 1|52| +--****--+ |20|30* 1| *******--+ | 1| 2| 3| +--+--+--+ 我们沿着图中的星号线剪开,得到两个部分,每个部分的数字和都是60。 本题的要求就是请你编程判定:对给定的m x n 的格子中的整数,是否可以分割为两个部分,使得这原创 2016-05-09 16:47:38 · 741 阅读 · 0 评论 -
线性表的顺序存储结构
(严蔚敏的课本代码准确的来说应该是基于c++的; 目测就我观察而言,c语言实现不了引用的编译 此处所传的参数均为形参类型&形参名) 线性结构: 有唯一的一个第一个元素唯一的一个最后一个元素除第一个元素,每个元素有且只有一个直接前驱出最后一个元素,每个元素有且只有一个后继 线性表:n个数据的有限序列 线性表的顺序结构:用一个连续的物理存储原创 2016-08-20 10:43:47 · 353 阅读 · 0 评论 -
USACO Section 3.3 A Game pascal
描述 Description 有如下一个双人游戏:N(2 <= N <= 100)个正整数的序列放在一个游戏平台上,两人轮流从序列的两端取数,取数后该数字被去掉并累加到本玩家的得分中,当数取尽时,游戏结束。以最终得分多者为胜。 编一个执行最优策略的程序,最优策略就是使自己能得到在当前情况下最大的可能的总分的策略。你的程序要始终为第二位玩家执行最优策略。 输入格式 Input原创 2016-05-22 20:10:41 · 1342 阅读 · 0 评论 -
【经典算法】——KMP,深入讲解next数组的求解
前言 之前对kmp算法虽然了解它的原理,即求出P0···Pi的最大相同前后缀长度k;但是问题在于如何求出这个最大前后缀长度呢?我觉得网上很多帖子都说的不是很清楚,总感觉没有把那层纸戳破,后来翻看算法导论,32章 字符串匹配虽然讲到了对前后缀计算的正确性,但是大量的推理证明不大好理解,没有与程序结合起来讲。今天我在这里讲一讲我的一些理解,希望大家多多指教,如果有不清楚的或错误的请给我留言。原创 2016-05-21 17:55:46 · 2089 阅读 · 2 评论 -
蓝桥杯 第七届省赛试题 取球博弈
取球博弈 两个人玩取球的游戏。 一共有N个球,每人轮流取球,每次可取集合{n1,n2,n3}中的任何一个数目。 如果无法继续取球,则游戏结束。 此时,持有奇数个球的一方获胜。 如果两人都是奇数,则为平局。 假设双方都采用最聪明的取法, 第一个取球的人一定能赢吗? 试编程解决这个问题。 输入格式: 第一行3个正整数n1 n2 n3,空格分开,表示每次可取的数目 (0原创 2016-04-15 18:09:44 · 5735 阅读 · 6 评论 -
设有n项任务,加工时间分别表示为正整数t1,t2,...,tn。背包问题系列
设有n项任务,加工时间分别表示为正整数t1,t2,...,tn。现有2台同样的机器,从0时刻可以安排对这些任务的加工,知道T时刻所有任务完成,总加工时间为T。 设计算法使得总加工时间T最小的调度方案。 设给定的实例: t1=1 t2= 5 t3=2 t4= 10 t5=3 不理解或者需要交流的同学可以粉我新浪微博@雷锹,私信哟!!! 每题都写思路效率太低了,有需要或者是实在不原创 2016-05-08 16:53:00 · 8009 阅读 · 1 评论 -
蓝桥杯 幂一矩阵 2014年JavaB组决赛第5题
标题:幂一矩阵 天才少年的邻居 atm 最近学习了线性代数相关的理论,他对“矩阵”这个概念特别感兴趣。矩阵中有个概念叫做幂零矩阵。对于一个方阵 M ,如果存在一个正整数 k 满足 M^k = 0 ,那么 M 就是一个幂零矩阵。(^ 表示乘方) atm 不满足幂零矩阵,他自己设想了一个幂一矩阵:对于一个方阵 M ,如果存在一个正整数 k 满足 M^k = I ,其中 I原创 2016-05-06 10:34:18 · 1369 阅读 · 0 评论 -
蓝桥杯 算法训练 瓷砖铺放(vip)
问题描述 有一长度为N(1<=N<=10)的地板,给定两种不同瓷砖:一种长度为1,另一种长度为2,数目不限。要将这个长度为N的地板铺满,一共有多少种不同的铺法? 例如,长度为4的地面一共有如下5种铺法: 4=1+1+1+1 4=2+1+1 4=1+2+1 4=1+1+2 4=2+2 编程用递归的方法求解上述问题。 输入格式 只有一个数N,代表地板的长度 输出格原创 2016-05-17 15:15:51 · 2594 阅读 · 0 评论 -
蓝桥杯 表格计算 2016年第六届蓝桥杯javaB组决赛第五题
标题:表格计算 某次无聊中, atm 发现了一个很老的程序。这个程序的功能类似于 Excel ,它对一个表格进行操作。 不妨设表格有 n 行,每行有 m 个格子。 每个格子的内容可以是一个正整数,也可以是一个公式。 公式包括三种: 1. SUM(x1,y1:x2,y2) 表示求左上角是第 x1 行第 y1 个格子,右下角是第 x2 行第 y2 个格子这个矩形内所有格子的值的和。 2原创 2016-05-17 13:54:00 · 1970 阅读 · 1 评论 -
蓝桥杯 历届试题 错误票据
问题描述 某涉密单位下发了某种票据,并要在年终全部收回。 每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。 因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成了某个ID断号,另外一个ID重号。 你的任务是通过编程,找出断号的ID和重号的ID。 假设断号不可能发生在最大和最小号。 输入格式 要求程序首先输入一个整数N(N 接着读入原创 2016-05-16 18:22:33 · 462 阅读 · 0 评论 -
蓝桥杯 穿越雷区 2015年第六届蓝桥杯JavaB组决赛第四题
标题:穿越雷区 X星的坦克战车很奇怪,它必须交替地穿越正能量辐射区和负能量辐射区才能保持正常运转,否则将报废。 某坦克需要从A区到B区去(A,B区本身是安全区,没有正能量或负能量特征),怎样走才能路径最短? 已知的地图是一个方阵,上面用字母标出了A,B区,其它区都标了正号或负号分别表示正负能量辐射区。 例如: A + - + - - + - - + - + + + - +原创 2016-05-16 17:08:12 · 1664 阅读 · 1 评论 -
蓝桥杯 六角幻方 2014年JavaB组决赛试题
标题:六角幻方 把 1 2 3 ... 19 共19个整数排列成六角形状,如下: * * * * * * * * * * * * * * * * * * * 要求每个直线上的数字之和必须相等。共有15条直线哦! 再给点线索吧!我们预先填好了2个数字,第一行的头两个数字是:15 13,参见图【p1.png】,黄原创 2016-05-04 10:54:15 · 2974 阅读 · 0 评论 -
背包问题
package com.experimental.dongtaiguihua; /* * 01背包问题具体例子:假设现有容量10kg的背包,另外有3个物品,分别为a1,a2,a3。物品a1重量为3kg,价值为4;物品a2重量为4kg,价值为5;物品a3重量为5kg,价值为6。将哪些物品放入背包可使得背包中的总价值最大? 这个问题有两种解法,动态规划和贪婪算法。本文仅涉及动态规划。原创 2016-05-03 14:12:20 · 413 阅读 · 0 评论 -
康托展开
康托展开 康托展开的公式是 X=an*(n-1)!+an-1*(n-2)!+...+ai*(i-1)!+...+a2*1!+a1*0! 其中,ai为当前未出现的元素中是排在第几个(从0开始)。 这个公式可能看着让人头大,最好举个例子来说明一下。例如,有一个数组 s = ["A", "B", "C", "D"],它的一个排列 s1 = ["D", "B", "A", "C"],现在要转载 2016-05-24 17:29:15 · 334 阅读 · 0 评论 -
蓝桥杯 五角填数 2015年JavaB组决赛试题
标题:五星填数 如【图1.png】的五星图案节点填上数字:1~12,除去7和11。 要求每条直线上数字和相等。 如图就是恰当的填法。 请你利用计算机搜索所有可能的填法有多少种。 注意:旋转或镜像后相同的算同一种填法。 请提交表示方案数目的整数,不要填写任何其它内容。 package com.jueshai2015; import java.util.Hash原创 2016-05-04 12:12:47 · 2853 阅读 · 1 评论 -
蓝桥杯 排列序数 2014年JavaB组决赛第4题
标题:排列序数 如果用a b c d这4个字母组成一个串,有4!=24种,如果把它们排个序,每个串都对应一个序号: abcd 0 abdc 1 acbd 2 acdb 3 adbc 4 adcb 5 bacd 6 badc 7 bcad 8 bcda 9 bdac 10 bdca 11原创 2016-05-10 16:49:59 · 2542 阅读 · 0 评论 -
数组A中任意两个相邻元素大小相差1,在其中查找某个数。
package com.arithmetic.interview; import static java.lang.Math.abs; /** * Created by leiqiao on 2017/9/29. * describe:数组A中任意两个相邻元素大小相差1,在其中查找某个数。 * 数组A中任意两个相邻元素大小相差1,现给定这样的数组A和目标整数t,找出t在数组原创 2017-09-29 17:26:36 · 743 阅读 · 0 评论