自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 资源 (6)
  • 收藏
  • 关注

原创 历届试题 分糖果

问题描述  有n个小朋友围坐成一圈。老师给每个小朋友随机发偶数个糖果,然后进行下面的游戏:  每个小朋友都把自己的糖果分一半给左手边的孩子。  一轮分糖后,拥有奇数颗糖的孩子由老师补给1个糖果,从而变成偶数。  反复进行这个游戏,直到所有小朋友的糖果数都相同为止。  你的任务是预测在已知的初始糖果情形下,老师一共需要补发多少个糖果。输入格式 

2015-03-30 22:46:19 806

原创 历届试题 兰顿蚂蚁

标题:兰顿蚂蚁兰顿蚂蚁,是于1986年,由克里斯·兰顿提出来的,属于细胞自动机的一种。平面上的正方形格子被填上黑色或白色。在其中一格正方形内有一只“蚂蚁”。蚂蚁的头部朝向为:上下左右其中一方。蚂蚁的移动规则十分简单:若蚂蚁在黑格,右转90度,将该格改为白格,并向前移一格;若蚂蚁在白格,左转90度,将该格改为黑格,并向前移一格。规则虽然简单,蚂蚁的行为却十分复

2015-03-30 17:06:50 704

原创 vi编辑器配置

vi编辑器默认情况下没有行号、语法高亮、tab键退格非4位等等,需要根据需求手动编辑一下1、打开终端,输入   vi ~/.vimrc2、以下内容根据需要原样输入,没有分号:      //显示行号           set number      //检测文件类型      filetype on      //语法高亮      syntax on   

2015-03-29 14:00:00 672

原创 最大公约数和最小公倍数

辗转相除法(欧几里得算法)算是求最大公约数最简单高效的算法了,这几行代码用最简洁的方式写了这个算法,值得牢牢记住:#include //最大公约数 int Gcd(int a, int b){ return b == 0 ? a : Gcd(b, a%b); }//最小公倍数int Lcm(int a, int b){ return a / Gcd(a, b) *

2015-03-29 13:20:52 618

原创 c/c++产生随机数

在算法竞赛中,常常需要用生成随机数的办法来产生测试数据,调试程序。用到的函数有rand(),srand(),time()。(1)rand()rand()在头文件中,可以产生0~2147483647的随机数。如果需要某个范围的数,只需要取余即可。for(int i = 0; i < 10; i++){ cout << i << " : "; cout << rand(

2015-03-26 16:30:12 677

原创 线性结构------线性表(二)

如果要对链表进行插入删除操作,用顺序结构需要找到目标位置然后移动大量元素,复杂度为O(n),此时就需要考虑线性表的链式存储结构。    链式线性表由n个结点通过指针域连接而成。最简单的链表为单链表。如图:单链表的抽象数据类型

2015-03-25 20:08:30 670

原创 算法训练 开心的金明

问题描述  金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间他自己专用的很宽敞的房间。更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎 么布置,你说了算,只要不超过N元钱就行”。今天一早金明就开始做预算,但是他想买的东西太多了,肯定会超过妈妈限定的N元。于是,他把每件物品规定了一 个重要度,分为5等:用整数1~5表示,第5等最重要。他还从因特网上查到了每件物品的价格(都是

2015-03-20 11:26:11 2058 1

原创 算法训练 入学考试

问题描述  辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。”  

2015-03-20 10:44:01 1253

原创 算法训练 纪念品分组

问题描述  元旦快到了,校学生会让乐乐负责新年晚会的纪念品发放工作。为使得参加晚会的同学所获得的纪念品价值 相对均衡,他要把购来的纪念品根据价格进行分组,但每组最多只能包括两件纪念品,并且每组纪念品的价格之和不能超过一个给定的整数。为了保证在尽量短的时 间内发完所有纪念品,乐乐希望分组的数目最少。  你的任务是写一个程序,找出所有分组方案中分组数最少的一种,输出最少的分组数目。输入格式

2015-03-19 09:22:31 925

原创 算法训练 K好数

问题描述如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数。求L位K进制数中K好数的数目。例如K = 4,L = 2的时候,所有K好数为11、13、20、22、30、31、33 共7个。由于这个数目很大,请你输出它对1000000007取模后的值。输入格式输入包含两个正整数,K和L。输出格式输出一个整数,表示答案对1000

2015-03-17 16:12:09 1679 1

原创 算法训练 结点选择

问题描述有一棵 n 个节点的树,树上每个节点都有一个正整数权值。如果一个点被选择了,那么在树上和它相邻的点都不能被选择。求选出的点的权值和最大是多少?输入格式第一行包含一个整数 n 。接下来的一行包含 n 个正整数,第 i 个正整数代表点 i 的权值。接下来一共 n-1 行,每行描述树上的一条边。输出格式输出一个整数,代表选出的点的权值和的最大值。样

2015-03-17 11:15:49 718

原创 线性结构------线性表(一)

线性表(Linear List)由有限个类型相同的数据元素组成,除了第一个元素和最后一个元素外,其他元素都有唯一的前驱元素和唯一的后继元素。------表中元素个数成为线性表的长度。------线性表没有元素时成为空表。------表起始位置成为表头,结束位置成为表尾。线性表的抽象数据类型描述:数据对象集合:{a1,a2,a3,... ,an},每个元素类型为DataType,

2015-03-14 17:46:51 704

原创 PAT Pop Sequence

02-3. Pop Sequence (25)Given a stack which can keep M numbers at most. Push N numbers in the order of 1, 2, 3, ..., N and pop randomly. You are supposed to tell if a given sequence of numbers is a

2015-03-14 16:38:03 835 1

原创 深度优先搜索(DFS)

深度优先搜索属于图算法的一种,英文缩写为DFS即Depth First Search.其过程简要来说是对每一个可能的分支路径深入到不能再深入为止,而且每个节点只能访问一次.算法:1、构造一个有根构成的单元素栈S;2、If Top(S) 是目标节点 Then 停止;3、Pop(S), 把Top(S)的所有子节点压入栈顶;4、If S空 Then 失败 Else goto

2015-03-12 21:24:48 622

原创 广度优先搜索(BFS)

广度优先搜索(BFS)是最简便的图的搜索算法之一,这一算法也是很多重要的图的算法的原型。算法:1、构造由根组成的队列Q;2、If Q的第一个元素x是目标节点 Then 停止;3、从Q中删除x, 把x的所有子节点加入Q的末尾;4、If Q空 Then 失败   Else goto 2.举例:八数码问题:------输入:具有8个编号小方块的魔方

2015-03-12 21:02:43 1002

原创 贪心算法

贪心算法的基本思想:------求解最优化问题的算法包含一系列步骤------每一部都有一组选择------做出当前看来最好的选择------希望通过做出局部优化选择达到全局优化选择------贪心算法不一定总产生优化解------贪心算法是否产生优化解,需要严格证明贪心算法产生优化解的条件------贪心选择性:若一个优化问题的全局优化解可以通过局部优化选

2015-03-12 20:18:27 875

原创 动态规划

动态规划(dynamic programming)是求解决策过程(decision process)最优化的数学方法。一般分为:线性动规:拦截导弹,合唱队形,挖地雷,建学校,剑客决斗等;区域动规:石子合并, 加分二叉树,统计单词个数,炮兵布阵等;树形动规:贪吃的九头龙,二分查找树,聚会的欢乐,数字三角形等;背包问题:01背包问题,完全背包问题,分

2015-03-12 19:39:57 801

原创 基础练习 2n皇后问题

问题描述  给定一个n*n的棋盘,棋盘中有一些位置不能放皇后。现在要向棋盘中放入n个黑皇后和n个白皇后,使任意的两个黑皇后都不在同一行、同一列或同一条对角线上,任意的两个白皇后都不在同一行、同一列或同一条对角线上。问总共有多少种放法?n小于等于8。输入格式  输入的第一行为一个整数n,表示棋盘的大小。  接下来n行,每行n个0或1的整数,如果一个整数为1,表示对应的位置可以放皇后,

2015-03-12 18:39:48 6205 1

原创 暴力搜索------回溯法

回溯法(backtracking)是深度优先搜索(DFS)的一种,按照深度优先的顺序便利解答树。应用范围很广,只要能把待求解的问题分成不太多的步骤,每个步骤又只有不太多的选择,都可以考虑应用回溯法。在学习回溯法之前,一定要保证递归程序能熟练准确地写出。       当把问题分成若干步骤并递归求解时,如果当前步骤没有合法选择则函数将返回上一级递归调用。例如:       八皇后问题:

2015-03-12 07:58:44 5905 1

原创 基础练习 分解质因数

问题描述  求出区间[a,b]中所有整数的质因数分解。输入格式  输入两个整数a,b。输出格式  每行输出一个数的分解,形如k=a1*a2*a3...(a1样例输入3 10样例输出3=34=2*25=56=2*37=78=2*2*29=3*310=2*5提示  先筛出所有素数,然后再分解。数据规模和约定  2

2015-03-11 21:19:49 2443

原创 基础练习 矩阵乘法

问题描述  给定一个N阶矩阵A,输出A的M次幂(M是非负整数)  例如:  A =  1 2  3 4  A的2次幂  7 10  15 22输入格式  第一行是一个正整数N、M(1  接下来N行,每行N个绝对值不超过10的非负整数,描述矩阵A的值输出格式  输出共N行,每行N个整数,表示A的M次幂所对应的矩阵。相邻的数之间用一个空格隔开样例

2015-03-11 21:09:39 1734

原创 基础练习 完美的代价

问题描述  回文串,是一种特殊的字符串,它从左往右读和从右往左读是一样的。小龙龙认为回文串才是完美的。现在给你一个串,它不一定是回文的,请你计算最少的交换次数使得该串变成一个完美的回文串。  交换的定义是:交换两个相邻的字符  例如mamad  第一次交换 ad : mamda  第二次交换 md : madma  第三次交换 ma : madam (回文!完美!)输入

2015-03-11 20:41:12 5260 10

原创 基础练习 数的读法

问题描述  Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从0开始编号,到几百万,几千万,甚至上亿。  比如说,在对学生讲解第1234567009号位置上的碱基时,光看着数字是很难准确的念出来的。  所以,他迫切地需要一个系统,然后当他输入12 3456 7009时,会给出相应的念法:  十二亿三千四百五十六万七千零九

2015-03-11 20:21:43 1298

原创 基础练习 Sine之舞

问题描述  最近FJ为他的奶牛们开设了数学分析课,FJ知道若要学好这门课,必须有一个好的三角函数基本功。所以他准备和奶牛们做一个“Sine之舞”的游戏,寓教于乐,提高奶牛们的计算能力。  不妨设  An=sin(1–sin(2+sin(3–sin(4+...sin(n))...)  Sn=(...(A1+n)A2+n-1)A3+...+2)An+1  FJ想让奶牛们计算Sn的值

2015-03-11 19:37:49 2706

原创 基础练习 FJ的字符串

问题描述  FJ在沙盘上写了这样一些字符串:  A1 = “A”  A2 = “ABA”  A3 = “ABACABA”  A4 = “ABACABADABACABA”  … …  你能找出其中的规律并写所有的数列AN吗?输入格式  仅有一个数:N ≤ 26。输出格式  请输出相应的字符串AN,以一个换行符结束。输出中不得含有多余的空格或换行、回车符。

2015-03-11 19:34:35 1412

原创 基础练习 芯片测试

问题描述  有n(2≤n≤20)块芯片,有好有坏,已知好芯片比坏芯片多。  每个芯片都能用来测试其他芯片。用好芯片测试其他芯片时,能正确给出被测试芯片是好还是坏。而用坏芯片测试其他芯片时,会随机给出好或是坏的测试结果(即此结果与被测试芯片实际的好坏无关)。  给出所有芯片的测试结果,问哪些芯片是好芯片。输入格式  输入数据第一行为一个整数n,表示芯片个数。  第二行到第n+

2015-03-11 15:32:31 791

原创 基础练习 龟兔赛跑预测

问题描述  话说这个世界上有各种各样的兔子和乌龟,但是研究发现,所有的兔子和乌龟都有一个共同的特点——喜欢赛跑。于是世界上各个角落都不断在发生着乌龟和兔子的比赛,小华对此很感兴趣,于是决定研究不同兔子和乌龟的赛跑。他发现,兔子虽然跑比乌龟快,但它们有众所周知的毛病——骄傲且懒惰,于是在与乌龟的比赛中,一旦任一秒结束后兔子发现自己领先t米或以上,它们就会停下来休息s秒。对于不同的兔子,t,s的数

2015-03-11 15:26:13 1082

原创 基础练习 回形取数

问题描述  回形取数就是沿矩阵的边取数,若当前方向上无数可取或已经取过,则左转90度。一开始位于矩阵左上角,方向向下。输入格式  输入第一行是两个不超过200的正整数m, n,表示矩阵的行和列。接下来m行每行n个整数,表示这个矩阵。输出格式  输出只有一行,共mn个数,为输入矩阵回形取数得到的结果。数之间用一个空格分隔,行末不要有多余的空格。样例输入3 31 2 3

2015-03-11 15:22:48 4891 1

原创 基础练习 报时助手

问题描述  给定当前的时间,请用英文的读法将它读出来。  时间用时h和分m表示,在英文的读法中,读一个时间的方法是:  如果m为0,则将时读出来,然后加上“o'clock”,如3:00读作“three o'clock”。  如果m不为0,则将时读出来,然后将分读出来,如5:30读作“five thirty”。  时和分的读法使用的是英文数字的读法,其中0~20读作:  0:

2015-03-11 15:01:27 146

原创 基础练习 Huffman树

问题描述  Huffman树在编码中有着广泛的应用。在这里,我们只关心Huffman树的构造过程。  给出一列数{pi}={p0, p1, …, pn-1},用这列数构造Huffman树的过程如下:  1. 找到{pi}中最小的两个数,设为pa和pb,将pa和pb从{pi}中删除掉,然后将它们的和加入到{pi}中。这个过程的费用记为pa + pb。  2. 重复步骤1,直到{pi}

2015-03-11 14:52:10 1472

原创 基础练习 矩形面积交

问题描述  平面上有两个矩形,它们的边平行于直角坐标系的X轴或Y轴。对于每个矩形,我们给出它的一对相对顶点的坐标,请你编程算出两个矩形的交的面积。输入格式  输入仅包含两行,每行描述一个矩形。  在每行中,给出矩形的一对相对顶点的坐标,每个点的坐标都用两个绝对值不超过10^7的实数表示。输出格式  输出仅包含一个实数,为交的面积,保留到小数后两位。样例输入1 1 3

2015-03-11 12:42:13 4728

原创 基础练习 高精度加法

问题描述  输入两个整数a和b,输出这两个整数的和。a和b都不超过100位。算法描述  由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储。对于这种问题,一般使用数组来处理。  定义一个数组A,A[0]用于存储a的个位,A[1]用于存储a的十位,依此类推。同样可以用一个数组B来存储b。  计算c = a + b的时候,首先将A[0]与B[0]相加,如果有进位产生,则

2015-03-11 12:19:04 876

原创 基础练习 01字串

问题描述对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。它们的前几个是:0000000001000100001100100请按从小到大的顺序输出这32种01串。输入格式本试题没有输入。输出格式输出32行,按从小到大的顺序每行一个长度为5的01串。样例输出00000000010001000011思

2015-03-11 12:14:39 588

原创 基础练习 字母图形

问题描述利用字母可以组成一些美丽的图形,下面给出了一个例子:ABCDEFGBABCDEFCBABCDEDCBABCDEDCBABC这是一个5行7列的图形,请找出这个图形的规律,并输出一个n行m列的图形。输入格式输入一行,包含两个整数n和m,分别表示你要输出的图形的行数的列数。输出格式输出n行,每个m个字符,为你的图形。样例输入5 7样

2015-03-11 11:09:30 664

原创 基础练习 数列特征

问题描述给出n个数,找出这n个数的最大值,最小值,和。输入格式第一行为整数n,表示数的个数。第二行有n个数,为给定的n个数,每个数的绝对值都小于10000。输出格式输出三行,每行一个整数。第一行表示这些数中的最大值,第二行表示这些数中的最小值,第三行表示这些数的和。样例输入51 3 -2 4 5样例输出5-211数据规模与约定

2015-03-11 11:08:13 1177

原创 基础练习 查找整数

问题描述给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。输入格式第一行包含一个整数n。第二行包含n个非负整数,为给定的数列,数列中的每个数都不大于10000。第三行包含一个整数a,为待查找的数。输出格式如果a在数列中出现了,输出它第一次出现的位置(位置从1开始编号),否则输出-1。样例输入61 9 4 8 3 99样

2015-03-11 11:02:33 1597 1

原创 基础练习 杨辉三角形

问题描述杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。下面给出了杨辉三角形的前4行:     1    1 1   1 2 1  1 3 3 1  给出n,输出它的前n行。输入格式输入包含一个数n。输出格式输出杨辉三角形的前n行。

2015-03-11 10:46:12 509

原创 基础练习 特殊的数字

问题描述  153是一个非常特殊的数,它等于它的每位数字的立方和,即153=1*1*1+5*5*5+3*3*3。编程求所有满足这种条件的三位十进制数。输出格式  按从小到大的顺序输出满足条件的三位十进制数,每个数占一行。#include int main(){ int g,s,b,i; for(i = 100; i <= 999; i++) { g = i %

2015-03-11 10:45:01 882

原创 基础练习 特殊回文数

问题描述  123321是一个非常特殊的数,它从左边读和从右边读是一样的。  输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。输入格式  输入一行,包含一个正整数n。输出格式  按从小到大的顺序输出满足条件的整数,每个整数占一行。样例输入52样例输出899998989989998899数据规模和约定  1

2015-03-11 10:42:06 2977 2

原创 基础练习 十进制转十六进制

问题描述  十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有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。  给出一个非负整数,将它表示成十六进制的形式。输入格式  输

2015-03-11 10:24:53 790

FedoraMediaWriter-win32-4.1.1.exe

FedoraMediaWriter的安装文件,以前叫liveusb creator,用它做Fedora的U盘启动盘十分简单,用其他工具会做失败

2018-02-02

poi-bin-3.17-beta1-20170701

java读excel的所有jar包,包含poi-3.17-beta1、poi-examples-3.17-beta1,、poi-ooxml-3.17-beta1、poi-ooxml-schemas-3.17-beta1、poi-scratchpad-3.17-beta1、xmlbeans-2.6.0、curvesapi-1.04、log4j-1.2.17、junit-4.12、commons-codec-1.10、commons-collections4-4.1、commons-logging-1.2

2017-09-17

MyFirstCodingDojo

第一次CodingDojo的ppt,偏重于介绍敏捷,TDD,UML,以及一个操练的FizzBuzz Kata

2016-05-11

IOS_CollectionViewDemo

简单的CollectionViewDemo,Cell中有一个Label,Label标号自增长

2015-07-22

一元多项式加减乘运算

数据结构上机作业,一元多项式的加减乘运算,双向链表实现

2015-07-12

活期储户管理系统

数据结构课程设计代码,功能如下(1)储户开户(2)储户销户(3)向某账户存款;(4)从某账户取款(5)排序显示所有账户信息(6)查询某账户余额(7)查询某账户交易记录,数据以文件方式存储,c++语言,用到栈、双向队列,算法以二分查找为主,代码采用匈牙利命名法

2015-07-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除