自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(54)
  • 资源 (3)
  • 收藏
  • 关注

原创 Shell学习笔记

1  控制结构1.1 if...then   语法:   if test-command   then   commands   fi   加粗的字由程序员按需要替换。 特殊参数“$#”表示命令行参数的个数。1.2 test内置命令   test命令的选项:   -d 检查文件是否存在以及该文件是否是目录文件   -e 检查文件是否存在

2012-11-21 10:28:53 641

原创 awk学习笔记

awk是一种编程语言,对文本和数据进行处理,支持正则表达式,突出特点是对文本列的操作。  awk语言的最基本功能是在文件或字符串中基于指定规则来分解抽取信息,也可以基于指定的规则来输出数据。1 awk调用的三种方式  awk调用有命令行方式、脚本执行方式和命令行调用脚本执行三种方式:  (1) awk [option] 'awk_script' input_file1 [input

2012-11-21 10:15:45 656

原创 C++写的简易贪吃蛇

在VC++ 6.0下编译通过#include #include #include #include #define W 30#define H 20char symbol[3] = {'#', '*', '@'}; //分别代表:篱笆、蛇身、食物enum direction {left, up, right, down}; //方向using namespace s

2012-10-10 21:53:41 3814 2

原创 POJ 1191 棋盘分割

题目连接:http://poj.org/problem?id=1191解题思路:棋盘分割一块之后,剩余的棋盘的分割和原问题类似,只是规模变小了。棋盘分割问题可以采用动态规划方法解决。对方差公式进行化解,得到σ^2=1/n∑xi^2 - x^2可知,要使方差最小,只需使∑xi^2最小即可,即各块分值平方和最小。平均值 x是个固定的数,跟分割的方式没有关系,首先定义状态:dp[k]

2012-06-26 19:07:38 4359 2

原创 POJ 1208 The Blocks Problem

该题重点是要理解四种指令具体执行的操作,然后模拟操作执行过程。#include#include#includeusing namespace std;typedef struct block{ int num; struct block *up, *down; //分别指向该block上面和下面的block } block;block *table[25]; //模拟

2012-06-04 17:14:46 2092

原创 POJ 1189 钉子和小球

题目链接:http://poj.org/problem?id=1189解题思路:此题有几个要注意的地方:1 因为钉子最多有50层,22 如果某个位置钉子不在了,则该位置的概率垂直下落到下下层对应位置,即(i,j)处的概率直接赋予位置(I+2, j+1)。3 当某个位置(i,j)的钉子在,则将该位置的概率除以1/2再传递到(i+1,j)和(i+1, j+1)两个位置。在传递概率时

2012-05-25 10:48:07 1547

原创 POJ 1179 Polygon

题目大意:多边形游戏,有N个顶点的多边形,3 ,多边形有N条边,每个顶点中有一个数字(可正可负),每条边上或者是“+”号,或者是“*”号。边从1到N编号,首先选择一条边移去,然后进行如下操作:1 选择一条边E和边E连接着的两个顶点V1,V2。2 用一个新的顶点代替边E和V1、V2,新顶点的值为V1、V2中的值进行边上代表的操作得来(相加或相乘)当最后只剩一个顶点,没有边时,游戏结束

2012-05-24 09:48:38 1918

原创 POJ 1141 Brackets Sequence

题目描述:定义合法的括号序列如下:1 空序列是一个合法的序列2 如果S是合法的序列,则(S)和[S]也是合法的序列3 如果A和B是合法的序列,则AB也是合法的序列例如:下面的都是合法的括号序列(),  [],  (()),  ([]),  ()[],  ()[()]下面的都是非法的括号序列(,  [,  ),  )(,  ([)],  ([(] 给定一个

2012-05-22 10:37:56 4185 2

原创 POJ 1178 Camelot (floyd+枚举)

借鉴了网上其他人的思路题目大意:有一种棋盘游戏,棋盘有8x8共64个方格,有两种棋子:国王和骑士,国王只有一个,骑士可以有多个。国王每移动一步可以从当前位置移动到八个方向的相邻方格(共有8种走法),移动的时候不能越界。骑士也是8种走法,但走的是“日”字,移动的时候也不能越界。当国王遇到骑士时,骑士可以带上国王,该骑士和国王看作一个骑士,按骑士走法走,每走一步只算一步(即国王从此可以忽略)。

2012-05-18 13:48:27 2316

原创 POJ 1163 The Triangle

简单的动态规划题状态转移方程:data[i][j]=max(data[i+1][j], data[i+1][j+1])+data[i][j]最后的data[0][0]即为结果#include#includeusing namespace std;int data[100][100];int main(){ int rows; //读入数据 cin>>rows;

2012-05-17 21:31:30 576

原创 POJ 1157 LITTLE SHOP OF FLOWERS

题目大意:    有F种花,要插到V个花瓶中,1如果有两种花的编号分别为i和j且i。每种花插入到某个花瓶中都有一个对应的美观值aij ,-50 ,现在要求出将F种花插入到V个花瓶中所能获得的最大美观总值。解题思路:用一个数组a[100][100]保存输入的美观值,aij表示花i插入到花瓶j所对应的美观值。由于数组下标从0开始,我们令花的编号从0到F-1,花瓶的编号为0到V-1。

2012-05-15 22:28:49 594

原创 POJ 1125 Stockbroker Grapevine

首先想到的是Dijkstra算法,但觉得速度可能会很慢,于是上网大概搜了一下,看到别人说这道题用Floyd算法,虽然听过这个算法,但没用过,于是先学习了Floyd算法,然后顺利解决了该题。题目大意:(题目翻译转载自http://blog.csdn.net/lyy289065406/article/details/6645856)众所周知,证券经纪业对谣言非常敏感。您需要想出股票经纪人中传播

2012-05-09 21:22:54 598

原创 POJ 1088 滑雪

题目大意:Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道在一个区域中最长底滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子 1 2 3 4 516 17 18 19 615 24 25 20 714 23 22 21

2012-05-08 20:27:19 1421

原创 POJ 1050 To the Max

开始也没思路,参考了网上别人的思路题目大意:给定一个N*N的矩阵,求出一个子矩阵(最小为1*1,最大为N*N),使得该子矩阵中的元素和最大,输出最大的和。解题思路:子矩阵最小为1行,最大为N行,将原矩阵子矩阵(最小为1行,最大为N行)压缩成一个一维数组,问题转换为求一维数组的子序列最大和,记录最大值。#includeint array[100][100];int s[10

2012-05-07 22:43:00 530

原创 POJ 1877 Flooded!

迷惑:为啥C能过,GCC就是Output Limit Exceeded题目:将一个区域分成m*n个方块,每个方块有有一个海拔(可正可负)。求当给区域注入指定容量的水时,水面的海拔是多少,以及被水淹没的方块占总方块数的百分比。每个方块的面积为100m^2,水的容量单位为立方米。解题思路:1 由于注水时,水会先填满海拔低的方块,所以将方块按海拔从低到高排序。2 将水的高度设置为第一

2012-04-24 18:37:30 1335 1

原创 POJ 1318 Word Amalgamation

题目:给定一个字典,每个字典条目为1个字符串,字符串最少1个字符,最多6个字符。字典中的条目并不是按序的,但每个条目都是唯一的。输入一个字符串,判断字典中是否有条目可以通过将该字符串调整字符位置得到,如果有多个这样的条目,按字典序输出,如果没有则输出"NOT A VALID WORD"。解题思路:1 首先将字典按字典序排序。2 对每个输入的字符串,遍历字典查找符合条件的条目,当

2012-04-24 15:43:43 876

原创 POJ 2377 Bad Cowtractors(并查集+贪心)

题目:有N个点和M条边,每条边都有一个花费cost。求出一些边使得:1 这些边的总花费最大。2 所有点连通,即任意节点都可以到达所有节点。3 不存在环路。如果不能连通所有点,则输出-1解题思路:该题类似于最小生成树。可使用并查集和贪心算法解决。1 将所有边按cost从大到小排序。2 将N个点初始化为N个并查集。3 从左到右遍历边数组,合并当前边连接的两个节点

2012-04-23 22:32:20 709

原创 POJ 2376 Cleaning Shifts

题目:给定一个时间T和N个时间区间,求最少需要多少个区间覆盖总区间[1,T],无法覆盖区域[1,T]时输出-1。例如T=10,有3个区间[1,7],[3,6],[8,10],则最少需要两个区间来覆盖,选择区间1和区间3。解题思路:使用贪心法。首先将区间按开始时间从小到大排序,开始时间相等按结束时间从小到大排序。1 如果第一个区间不是从1开始,则无法覆盖,输出-1。2 令当前

2012-04-23 22:22:54 4038 2

原创 POJ 2201 Cartesian Tree 笛卡尔树

题目:笛卡尔树:笛卡尔树中的每个节点有两个数据域k,a,对于数据域k,满足二叉搜索树性质,对于数据域a,满足最小堆性质。给出N个节点,1解题思路:首先,根据N个节点,肯定可以构造出一颗笛卡尔树。方法1: 递归法  (经过验证,该方法会超时) (见代码1.)a) 对节点数组,选出a值最小的节点,该节点为根节点b) 以根节点的k值为枢纽对数组进行划分,小于k的节点位于根

2012-04-23 18:03:59 2635

原创 POJ 1840 Eqs

题目:有以下方程:a1x13+ a2x23+ a3x33+ a4x43+ a5x53=0 ,方程的系数和xi的范围都为[-50,50],求出方程解的个数。解题思路:将方程移下位:a1x13+ a2x23 = -(a3x33+ a4x43+ a5x53),当方程左边等于右边时,求得方程的一个解。a1x13的上限为504=6250000,a1x13+ a2x23 的

2012-04-22 22:33:09 531

原创 POJ 1838 Banana(并查集)

题目:一个点用坐标(x,y)表示,如果两个点在水平方向或垂直方向上相邻,则两个点属于一个区域,即点1(x1,y1),点2(x2,y2)相邻当且仅当x1==x2,|y1-y2|=1或者|x1-x2|=1,y1=y2。给定一些点,相邻的点构成一个区域,求出k个区域所能拥有的最大点数。(k不大于区域数)。解题思路:可用并查集解决,一个区域表示为一个并查集,两个区域相邻时,合并这两个并查集。同

2012-04-22 22:06:48 947

原创 POJ 1828 Monkeys' Pride

题目:计算猴王的数目,猴子的位置由坐标(x,y)表示,如果一个猴子的坐标为(x0,y0),当不存在其他猴子的坐标(x,y)使得x>=x0, y>=y0时,该猴子就是猴王。例如有3个猴子,位置分别为(2,1)、(1,2)、(3,3),则只有(3,3)为猴王。猴王可以不止一个。现在的任务是给点猴子的点坐标,统计猴王的个数。解题思路:1 按x坐标从大到小排序,x坐标相等按y坐标从大到小排序。

2012-04-20 16:31:58 633

原创 POJ Building a New Depot

题目:建设一个围栏,围栏的部分只有横向和竖向两种方向,围栏的拐角处算一个点,给出围栏的所有点,计算出围栏的总长度。解题思路:1 围栏由多个线段构成,每个线段的长度至少为1.2 线段不是横向的就是竖向的3 x坐标相等或y坐标相等的点数目必定为偶数。4 按x坐标从小到大排序,x坐标相等按y坐标从小到大排序5 顺序扫描数组,挨个计算两点之间的距离,即list[1].y-lis

2012-04-20 16:06:41 597

原创 POJ 1763 Shortcut

解题思路:捷径具有以下性质:1 首先,Shortcut(捷径)不是水平的就是垂直的,设捷径由路径上两个点p1,p2构成   如果捷径是水平的,则两个点的y坐标相同,反之,如果是垂直的,则两个点的x坐标相同。2 构成捷径的两个点的编号肯定不相邻(如果相邻,则两个点之间的连线属于路径的一部分)。解题步骤:1  输入n个线段方向后,构造出n+1个点,Mirek的家定义为原点(0,

2012-04-11 22:41:44 1305

原创 POJ 1727 Advanced Causal Measurements (ACM)

题目看了半天都没看懂,后来参考了该博客http://maybeiloveu.iteye.com/blog/523396才有了思路。题目的主要思路是采用排序和二分查找,找到一个符合条件的t的最大值。代码如下:#includetypedef struct event{ int x; int t;} event;event e[100000];int cmp(const

2012-04-10 18:46:32 1173

原创 POJ 1723 SOLDIERS

题目:有N个士兵,每个士兵站的位置用一个坐标(x,y)表示,现在要将N个士兵站在同一个水平线,即所有士兵的y坐标相同并且x坐标相邻,每个士兵每次可以移动一个位置。求出最少的移动步数。解题思路:(借鉴了网上其他人的思路)x方向和y方向分开讨论。1  y方向:要使士兵最后位于同一水平线,则最终所有士兵的y坐标相同。将所有坐标的y值从小到大排序,对于首尾两个y值,移动到它

2012-04-09 22:53:56 2825

原创 POJ 1694 An Old Stone Game

题目:有一个古老的石头游戏,该游戏基于任意一棵树T,游戏的目标是在树T的根节点上放一颗石头,游戏的规则如下:1 游戏开始前,玩家先将K个石头放入桶中。2 在游戏的每一步,玩家从桶中拿一颗石头放到树的一个空的叶子节点上。3 当一个节点p的所有r个子节点都有一个石头,则移去r个子节点上的石头,然后将一个石头放到节点p上。剩下的r-1个石头重新放到桶中重复使用。如果玩家根据以上规则放

2012-04-09 12:16:30 1531

原创 POJ 1423 Big Number

题目:求一个数的阶乘的数字个数。如10! = 3 628 800,结果共有7个数字。输入m,1解题思路:1 设n!的结果共有x位数字,则n!2 利用斯特林公式快速求n的阶乘的近似值,斯特林公式如下:                两边取对数,得log(n!)=nlog(n)-n+0.5log(2πn)              ---式1由 log(n!)nlog(

2012-04-08 18:07:50 620

原创 POJ 3094 Quicksum

超级水题,直接上代码:#includeint main(){ //char s[256]; char ch; int count,value,quicksum; scanf("%c", &ch); while(ch != '#') { quicksum=0; count=1; while(ch != '\n') { if(ch==' ') valu

2012-04-05 16:06:00 386

原创 POJ 3006 Dirichlet's Theorem on Arithmetic Progressions

题目:给定一对互质的数a和d,序列a,a+d,a+2d,a+3d。。。包含无穷多个素数。例如:a为2,d为3时,序列为:2, 5, 8, 11, 14, 17, 20, 23, 26, 29, 32, 35, 38, 41, 44, 47, 50, 53, 56, 59, 62, 65, 68, 71, 74, 77, 80, 83, 86, 89, 92, 95, 98, ... ,其中

2012-04-05 16:04:49 479

原创 POJ 1503 Integer Inquiry

题目:    大整数加法,每个整数至多包含100个数字,最多100个整数相加,计算并输出结果。输入:     最多输入100行数据,每行输入一个正整数,输入0结束输入。输出:    输出所有正整数累加的结果。解题思路:    大整数相加,采用数组完成,每个数组保存一位数字。100个包含100位数字的大数相加,结果最多有103位,所以输入数组长度为100,结果数组长度为1

2012-03-29 21:58:01 1916

原创 POJ 2262 Goldbach's Conjecture 哥德巴赫猜想

题目:       1742年,哥德巴赫提出一个猜想:任何大于4的偶数都可以表示为两个奇素数之和。例如:8=3+5,其中3和5都是奇素数, 20=3+17=7+13。42=5+37=11+31=13+29=19+23.现在的任务是在1,000,000以内验证哥德巴赫猜想。输入:        输入包含一个或多个数字n,n均为偶数且6输出:        对于每个数字,打印出

2012-03-29 16:48:47 584

原创 POJ 1083 Moving Tables

题目:      著名的ACM公司租了一层楼,楼层的布局如下:       该楼层共有400个房间,每边200个房间。最近,公司想进行一些调整,其中包括在房间之间移动很多桌子。因为楼道很窄,桌子很大,只有一张桌子能通过楼道,所以有必要指定一个计划来使桌子移动更加高效。将桌子从一个房间移动到另外一个房间可以在10分钟内完成,当桌子从房间i移动到房间j时,从房间i到房间j部分的

2012-03-29 15:35:25 1024

原创 POJ 2739 Sum of Consecutive Prime Numbers

题目:有些正整数可以表示为一个或多个连续的素数和,例如,整数53有两种表示方式:5+7+11+13+17和53。整数41有三种表示方式:2+3+5+7+11+13, 11+13+17和41。整数2和3都只有一种表示方式,就是自己本身。而整数20没有这样的表示方式,即20不能表示为连续的宿舍和。现在的任务是给定一个正整数,找出该正整数的表示方式种数。输入:输入一系列的正整数,每个整数占一行,

2012-03-28 21:37:31 700

原创 POJ 2159 Ancient Cipher

开始把题目理解错了,以为字母替换都是将字母替换成它的下一个字母,即每个字符加1(z替换成A),其实每个字符加多少是没有限制的。解题的思路是统计加密后和加密前的字母出现频率,得到两个频率数组(每个数组有26个元素),不管加密时将字母往后移多少个位置,两个频率数组排序后是相等的。代码:#include#includeint partition(int *s, int begi

2012-03-28 20:57:05 503

原创 POJ 3299 Humidex

题目:三个变量temperature,dewpoint,humidex有以下关系:humidex = temperature + hh = (0.5555)× (e - 10.0)e = 6.11 × exp [5417.7530 × ((1/273.16) - (1/(dewpoint+273.16)))]任务是根据其中任意两个数,计算出第三个数。输入:输入的每一行由

2012-03-26 21:35:34 2016

原创 POJ 1008 Maya Calendar

题目:玛雅使用两种日历,第一种称为Haab,一年为365天,一年分为19个月,前18个月每个月都是20天,第19个月为5天,每一个月都有一个名字,分别为pop, no, zip, zotz, tzec, xul, yoxkin, mol, chen, yax, zac, ceh, mac, kankin, muan, pax, koyab, cumhu和uayet,每个月份中的天数用0到19表

2012-03-26 16:48:32 5512 4

原创 POJ 1007 DNA Sorting

题目:一个字符序列的“未排序度”为序列中乱序的字符对数,例如,序列“DAABEC”的“未排序度”为5,因为D比后面4个字符大,E比C要大,所以结果为5。现在的任务是对DNA序列进行排序,DNA序列只包含A,C,G,T四个字符,对DNA序列按“未排序度”值从小到大排序,如果两个DNA序列的“未排序度”相等,则保持它们原来的顺序。输入:第一行为两个整数n,m,第一个整数代表DNA序列的长度,第二个

2012-03-26 16:05:55 758

原创 POJ 1006 Biorhythms

题目:在人的生命中有三种周期:体能、情绪、智商,每种周期的周期长度分别为23,28,33,每种周期都有一天是峰顶,在相应周期的峰顶,人会在相应方面表现得最好。由于三个周期长度不同,所以三个周期的峰顶一般不在同一天。给定一个日期,我们的任务是要找出一天,这一天在三个周期中都是峰顶,称为triple peak,得到这一天到距离给定日期的天数。输入:每一行输入一种情况,每行四个数,分别代表体能、情绪

2012-03-25 22:32:02 752

原创 POJ 1005

题目:密西西比河岸某处陆地因为河水侵蚀,每年陆地面积都在减少,每年减少50平方英里,减少的陆地面积呈半圆形,即该半圆形面积以每年50平方英里的速度增长。在第一年初时,该半圆形面积为0,半圆形的圆心坐标为(0,0),现在的任务是给定一个坐标,求出该坐标在哪一年年底会被河水侵蚀。假设给定的坐标到圆心的距离不会等于半圆的半径。输入:第一行输入坐标个数,第二行开始输入坐标,每个坐标占一行,每个坐标由横坐标

2012-03-25 21:40:00 6481

数据库课程设计(Java实现,C/S结构)

编程语言:Java 软件架构:C/S 开发工具:NetBeans 6.9.1 (这个IDE工具可以直接拖界面,很方便,但eclipse识别不了这个工程) 数据库: Oracle 数据库设计工具:PowerDesign 代码实现中没有考虑利息 密码全部用MD5加密保存

2011-01-13

java画图板 实现基本画图功能

用java实现的小型画图板,具备基本的画图功能,如画四方形、画圆、画三角形、画多边形还有橡皮擦功能。

2010-03-25

jsp自定义分页标签

一个分页标签,只需使用一个标签就可以输出分页信息。配有示例,示例中使用了Struts 1.x + Hibernate, 不用这两个框架的话稍微做些修改就可以了,比较简单,就不啰嗦了,基本使用方法都差不多,有错误指出欢迎指正。

2009-08-19

空空如也

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

TA关注的人

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