算法
文章平均质量分 70
98ki
这个作者很懒,什么都没留下…
展开
-
算法-蛇型矩阵
蛇形方陈描述在n*n方陈里填入1,2,...,n*n,要求填成蛇形。例如n=4时方陈为:10 11 12 19 16 13 28 15 14 37 6 5 4输入直接输入方陈的维数,即n的值。(n输出输出结果是蛇形方陈。样例输入3样例输出7 8 16 9 25 4 3//自己写的 太差了, 开始努力吧 时原创 2012-11-14 17:56:57 · 961 阅读 · 0 评论 -
黄金队列-蓝桥杯
黄金分割数0.618与美学有重要的关系。舞台上报幕员所站的位置大约就是舞台宽度的0.618处,墙上的画像一般也挂在房间高度的0.618处,甚至股票的波动据说也能找到0.618的影子.... 黄金分割数是个无理数,也就是无法表示为两个整数的比值。0.618只是它的近似值,其真值可以通过对5开方减去1再除以2来获得,我们取它的一个较精确的近似值:0.618034 有原创 2013-06-17 13:31:07 · 790 阅读 · 0 评论 -
提取子串-蓝桥杯
【代码填空】(满分12分) 串“abcba”以字母“c”为中心左右对称;串“abba” 是另一种模式的左右对称。这两种情况我们都称这个串是镜像串。特别地,只含有1个字母的串,可以看成是第一种模式的镜像串。 一个串可以含有许多镜像子串。我们的目标是求一个串的最大镜像子串(最长的镜像子串),如果有多个最大镜像子串,对称中心靠左的优先选中。例如:“abcdeef原创 2013-06-17 13:36:42 · 854 阅读 · 0 评论 -
比酒量 - 蓝桥杯
有一群海盗(不多于20人),在船上比拼酒量。过程如下:打开一瓶酒,所有在场的人平分喝下,有几个人倒下了。再打开一瓶酒平分,又有倒下的,再次重复...... 直到开了第4瓶酒,坐着的已经所剩无几,海盗船长也在其中。当第4瓶酒平分喝下后,大家都倒下了。 等船长醒来,发现海盗船搁浅了。他在航海日志中写到:“......昨天,我正好喝了一瓶.......奉劝大家,开船不喝酒,喝酒别开船.原创 2013-06-18 09:28:47 · 867 阅读 · 0 评论 -
汉诺塔 - 蓝桥杯
汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。 大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上(可以借助第三根柱子做缓冲)。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。 64个圆盘太多了,所以减为7个,金刚石和黄金都以木原创 2013-06-18 13:14:52 · 1240 阅读 · 0 评论 -
javaweb - 过滤器
1原创 2013-06-18 14:00:01 · 547 阅读 · 0 评论 -
割圆 - 蓝桥杯 圆周率的求法
南北朝时,我国数学家祖冲之首先把圆周率值计算到小数点后六位,比欧洲早了1100年!他采用的是称为“割圆法”的算法,实际上已经蕴含着现代微积分的思想。 如图【1.jpg】所示,圆的内接正六边形周长与圆的周长近似。多边形的边越多,接近的越好!我们从正六边形开始割圆吧。 如图【2.jpg】所示,从圆心做弦的垂线,可把6边形分割为12边形。该12边形的边长a'的计算方法原创 2013-06-19 17:44:23 · 2369 阅读 · 0 评论 -
最大数 -蓝桥杯 递归的执行顺序
递归的执行顺序:递归在程序设计中是一种重要的设计思想,惭愧之前并没有过多的了解,直到看到了蓝桥杯的这道题,花了一个小时才看明白这段代码。递归可以很好地控制程序的走向,每走到一个递归行,程序会等到这一行的递归程序执行完之后再执行以下的代码。需要注意的是,在执行的过程中,如果是堆内存类的数据,就可以通过这一特性做很多事情 ,如下面的例子,通过递归取到将list 中的数据移除剩下5个,然后该执行原创 2013-06-20 13:49:10 · 914 阅读 · 0 评论 -
求解GCD -ACM
描述给出n个 1到200000的正整数 (1你需要求出这n个数字的最大公约数。输入 第一行是数字n 下面n行是需要求的n个数字输出输出这n个数字的最大公约数样例输入3186336样例输出9import java.util.Scanner;public class theGreatestCommonDivisor {原创 2013-06-23 13:47:30 · 1325 阅读 · 0 评论 -
Late Counting (POJ 2386) 深度优先搜索
有一个大小为N×M的园子,雨后积起了水。八连通的积水被认为是连接在一起的。请求出园子里总共有多少水洼?(八连通指的是下图中相对W 的*的部分)****W****限制条件N, M ≤ 100输入N=10, M=12园子如下图('W'表示积水,'.'表示没有积水)W........WW..WWW.....WWW....WW...WW.....原创 2013-08-21 16:45:32 · 599 阅读 · 0 评论 -
java中多重循环的简化
要求:4个循环,是否存在和为m的情况。最暴力的方法,四个for:public class Forsearch { public static void main(String[] args){ int m = 100; int d; int[] array = new int[1000]; //a+b+c+d = m; d = m -a -b -原创 2013-08-15 14:28:32 · 1754 阅读 · 0 评论 -
Ants
n 只蚂蚁以每秒1cm 的速度在长为Lcm 的竿子上爬行。当蚂蚁爬到竿子的端点时就会掉落。由于竿子太细,两只蚂蚁相遇时,它们不能交错通过,只能各自反向爬回去。对于每只蚂蚁,我们知道它距离竿子左端的距离xi,但不知道它当前的朝向。请计算所有蚂蚁落下竿子所需的最短时间和最长时间。输入L = 10n = 3x = {2, 6, 7}输出min = 4max = 8原创 2013-08-15 09:20:55 · 633 阅读 · 0 评论 -
一道题弄懂宽度优先搜索 Breadth first search
迷宫的最短路径 给定一个大小为 N×M 的迷宫。迷宫由通道和墙壁组成,每一步可以向邻接的上下左右四格的通道移动。请求出从起点到终点所需的最小步数。请注意,本题假定从起点一定可以移动到终点。限制条件N, M ≤ 100输入N=10, M=10(迷宫如下图所示。'#','.','S','G'分别表示墙壁、通道、起点和终点)#S######.#......#.原创 2013-09-20 18:22:30 · 1223 阅读 · 0 评论 -
Minimum Scalar Product(2008 Round1A A)
有两个向量 v1=(x1, x2, ..., xn)和 v2=(y1, y2, ..., yn),允许任意交换 v1 和 v2 各自的分量的顺序。请计算 v1 和 v2 的内积 x1y1+...+xnyn 的最小值。import java.util.Arrays;import java.util.Collection原创 2013-09-21 17:19:12 · 822 阅读 · 0 评论 -
排序总结
各种排序方法的比较 各种排序方法的选择 选择合适的排序方法应考虑的因素: ①待排序的记录数目n; ②记录的大小(规模); ③关键字的结构及其初始状态; ④对稳定性的要求; ⑤语言工具的条件; ⑥存储结构; ⑦时间和辅助空间复杂度等。 各种排序方法的选择 ①就平均时间性能而言,快速排序最佳,其所需时间最省,但快速排序在最坏情原创 2014-07-29 11:33:53 · 508 阅读 · 0 评论 -
java画直线算法 DDA 计算机图形学
设(x1,y1)和(x2,y2)分别为所求直线的起点和终点坐标,由直线的微分方程得= m =直线的斜率(2-1) 可通过计算由x方向的增量△x引起y的改变来生成直线:xi+1=xi+△x(2-2)yi+1=yi+△y=yi+△x·m(2-3) 也可通过计算由y方向的增量△y引起x的改变来生成直线:原创 2013-06-06 15:15:38 · 4940 阅读 · 5 评论 -
源码转换-蓝桥杯
【编程题】(满分22分) 超文本标记语言(即HTML),是用于描述网页文档的一种标记语言。 HTML通过文本来描述文档显示出来应该具有的“样子”。它主要通过标签来定义对象的显示属性或行为。 如果把java的源文件直接拷贝到HTML文档中,用浏览器直接打开,会发现本来整齐有序的源文件变成了一团遭。这是因为,文本中的许多回车和空格都被忽略了。而有些原创 2013-06-14 14:04:24 · 676 阅读 · 0 评论 -
括号匹配问题
括号配对问题时间限制:3000 ms | 内存限制:65535 KB难度:3 描述 现在,有一行括号序列,请你检查这行括号是否配对。输入第一行输入一个数N(0输出每组输入数据的输出占一行,如果该字符串中所含的括号是配对的,则输出Yes,如果不配对则输出No样例输入3[(])(])([[]()])样例输出 NoNoYes原创 2013-03-10 12:30:07 · 759 阅读 · 0 评论 -
牛顿迭代法求高精度开方
牛顿迭代法:http://baike.baidu.com/view/643093.htm牛顿迭代公式:x(n+1)=x(n)-f(x(n))/f'(x(n))如求2的平方根,构造函数 x^2 - 2 = 0;dif为精度, 如果精度小于dif 跳出程序。这样可求出简单的平方根import java.math.BigDecimal;import java.m原创 2013-05-19 15:21:48 · 2633 阅读 · 0 评论 -
黄金连分数 -第四届蓝桥杯java B组
标题: 黄金连分数 黄金分割数0.61803... 是个无理数,这个常数十分重要,在许多工程问题中会出现。有时需要把这个数字求得很精确。 对于某些精密工程,常数的精度很重要。也许你听说过哈勃太空望远镜,它首次升空后就发现了一处人工加工错误,对那样一个庞然大物,其实只是镜面加工时有比头发丝还细许多倍的一处错误而已,却使它成了“近视眼”!!原创 2013-05-19 15:33:45 · 2634 阅读 · 0 评论 -
错误票据-第四届蓝桥杯java B组
每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。 因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成了某个ID断号,另外一个ID重号。 你的任务是通过编程,找出断号的ID和重号的ID。 假设断号不可能发生在最大和最小号。要求程序首先输入一个整数N(N接着读入N行数据。每行数据长度不等原创 2013-05-21 08:45:06 · 1342 阅读 · 0 评论 -
幸运数 - 第四届蓝桥杯java B组
标题:幸运数 幸运数是波兰数学家乌拉姆命名的。它采用与生成素数类似的“筛法”生成。 首先从1开始写出自然数1,2,3,4,5,6,.... 1 就是第一个幸运数。 我们从2这个数开始。把所有序号能被2整除的项删除,变为: 1 _ 3 _ 5 _ 7 _ 9 .... 把它们缩紧,重新记序,为:原创 2013-05-21 13:56:46 · 2739 阅读 · 0 评论 -
带分数 - 第四界蓝桥杯java组
标题:带分数 100 可以表示为带分数的形式:100 = 3 + 69258 / 714 还可以表示为:100 = 82 + 3546 / 197 注意特征:带分数中,数字1~9分别出现且只出现一次(不包含0)。 类似这样的带分数,100 有 11 种表示法。题目要求:从标准输入读入一个正整数N (N程序输原创 2013-05-23 18:57:37 · 2330 阅读 · 0 评论 -
世纪末的星期——第四届蓝桥杯选拔赛java B组
曾有邪教称1999年12月31日是世界末日。当然该谣言已经不攻自破。 还有人称今后的某个世纪末的12月31日,如果是星期一则会.... 有趣的是,任何一个世纪末的年份的12月31日都不可能是星期一!! 于是,“谣言制造商”又修改为星期日...... 1999年的12月31日是星期五,请问:未来哪一个离我们最近的一个世纪末年(原创 2013-05-13 14:20:36 · 1190 阅读 · 0 评论 -
马虎的算式——第四届蓝桥杯选拔赛java B组
小明是个急性子,上小学的时候经常把老师写在黑板上的题目抄错了。 有一次,老师出的题目是:36 x 495 = ? 他却给抄成了:396 x 45 = ? 但结果却很戏剧性,他的答案竟然是对的!! 因为 36 * 495 = 396 * 45 = 17820 类似这样的巧合情况可能还有很多,比如:27 * 59原创 2013-05-14 22:14:17 · 1245 阅读 · 1 评论 -
振兴中华_第四届蓝桥杯选拔赛java B组
标题: 振兴中华 小明参加了学校的趣味运动会,其中的一个项目是:跳格子。 地上画着一些格子,每个格子里写一个字,如下所示:(也可参见p1.jpg) 从我做起振 我做起振兴 做起振兴中 起振兴中华 比赛时,先站在左上角的写着“从”字的格子里,可以横向或纵向跳到相邻的格子里,但不能跳到对角的格子或其它位置。一直要跳到“华原创 2013-05-15 17:06:58 · 1990 阅读 · 1 评论 -
数量周期-蓝桥杯
复杂现象背后的推动力,可能是极其简单的原理。科学的目标之一就是发现纷繁复杂的自然现象背后的简单法则。爱因斯坦的相对论是这方面的典范例证。 很早的时候,生物学家观察某区域某种昆虫的数量(称为虫口数)之逐年变化规律,就十分迷惑:有的时候是逐渐增多达到一个平衡值。有的时候在两个数字间周期跳动。有的时候则进入一片混乱,类似随机数字一样变化(称为混沌现象)。 慢慢地,人们原创 2013-05-29 12:42:36 · 1088 阅读 · 0 评论 -
Card Trick
【Description】The shuffles asmall pack of card ,holds it face down and performs the following procedure:1. The top card is moved to the bottom of thepack.The new top card is dealt face up onto原创 2013-05-29 17:27:12 · 733 阅读 · 0 评论 -
火柴游戏-蓝桥杯
【编程题】(满分34分) 这是一个纵横火柴棒游戏。如图[1.jpg],在3x4的格子中,游戏的双方轮流放置火柴棒。其规则是: 1. 不能放置在已经放置火柴棒的地方(即只能在空格中放置)。 2. 火柴棒的方向只能是竖直或水平放置。 3. 火柴棒不能与其它格子中的火柴“连通”。所谓连通是指两根火柴棒可以连成一条直线,且中间没有其它原创 2013-06-02 16:34:19 · 1278 阅读 · 0 评论 -
正方形包含最多正方形数
*描述 有一个正方形的边长为N,你现在要在这个边长为N的大正方形里面找出一共有多少正方形。 输入 输入一个数字,正方形的边长N(0 输出 输出一行,表示一共有多少正方形。 */解析:该题用数学方法解决一个平方和公式便搞定。因为正方形是个平方问题。如一个4*4的正方形,考虑包含的1*1,有 4*4个,2*原创 2013-06-03 12:01:11 · 2177 阅读 · 0 评论 -
古代赌局-蓝桥杯
【编程题】(满分23分) 俗话说:十赌九输。因为大多数赌局的背后都藏有阴谋。不过也不尽然,有些赌局背后藏有的是:“阳谋”。 有一种赌局是这样的:桌子上放六个匣子,编号是1至6。多位参与者(以下称玩家)可以把任意数量的钱押在某个编号的匣子上。所有玩家都下注后,庄家同时掷出3个骰子(骰子上的数字都是1至6)。输赢规则如下: 1. 若某一个骰子上的数原创 2013-06-03 14:19:23 · 883 阅读 · 0 评论 -
图片
原创 2014-05-24 14:11:39 · 768 阅读 · 0 评论