自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(66)
  • 问答 (16)
  • 收藏
  • 关注

原创 cmu二进制炸弹

本篇文章参考了:http://www.cnblogs.com/remlostime/archive/2011/05/21/2052708.html大神的文章,有时候没思路了会来看一下,但是保证本文的每个阶段都是自己独立思考后总结写出来的。Phase_1对于phase1,我们只要关注一下红色框两行的代码,分别是将内存0x8049678的处的字符串A和ebp+0x8处的字符串B作为参数来调

2016-04-29 16:01:19 775

原创 内存中的栈模型

最近看完了Assembly Language For x86 Processors Sixth Edition By Kip R.Irvine中第8章对runtime stack的介绍,脑中对子程序调用时stack的过程有了一个完整的概念,现在来总结一下。    首先一上来作者用了这么一段话非常精炼的总结了stack的几乎所有功能,其实要想完全掌握这个概念,脑中只要把调用子程序时生成sta

2016-04-29 16:01:06 698 1

原创 计算方法-C/C++牛顿迭代法求非线性方程近似根

把f(x)在x0附近展开成泰勒级数f(x) = f(x0)+f'(x0)(x-x0)+f''(x0)/2!*(x-x0)^2+...然后取其线性部分,作为非线性方程f(x) = 0的近似方程,即泰勒展开的前两项,则有f(x) = f'(x0)x - x0*f'(x0) + f(x0) = 0f'(x0)x = x0*f'(x0) - f(x0)x = x0 - f(x0)/f'(x0)得到牛顿的一

2016-04-29 16:00:59 4540 1

原创 计算方法-C/C++二分法求根

问题:给出方程f(x) = x^3+10x-20,求该方程在(1,2)上的根,其精度不小于10^-4看似很简单的一个小问题,其实有很有细节值得注意,先给出代码方法一:#include #include double f(double x){ return x*x*x+10*x-20;}int main(){ double l,

2016-04-29 16:00:52 13611

原创 Java如何让异常处理机制更完备规范

1)catch的Exception一定要详细的点名是某种异常而非一概而论的用Exception ex来接收所有的异常,往往不理解这点的人也不能很好的理解catch的意义到底在哪里,是对捕获的异常进行一定程度上的处理,那么我们对捕捉到的不同类型的异常自然要有不同的处理,这也就驱使着我们在catch的时候必须要声明具体的异常名称2)其实在上一条中已经提及,就是要对捕获到的异常有所处理,而非仅仅pr

2016-04-29 16:00:47 243

原创 JDBC之ResultSet

ResultSet is a interfaceMore gnerally,ResultSet is a class involves a table returned by executeQuery cluase from jdbc,which includes the whole information we wanna get from our query,however if we w

2016-04-29 16:00:40 197

原创 C++中关于函数的引用

这一块知识最常见的疑问就是:#include #include using namespace std;int a[50];int& fun(int& x){ return x;}int main(){ int n; while(cin>>n) { int i; int tmp; for(i = 1;i <= n;i++

2016-04-29 16:00:34 192

原创 C++中输入输出流运算符的重载

cout是ostream类的对象,cin是istream类的对象。  我们平时用的cout我们用的都是ostream类库中本身定义好了函数)  而当我们需要对cout由于ostream类库中已经定义好的成员函数我们是不能改写的,因此我们只能将。  ex:ostream& operator<<(ostream& co,const Student& s) { co<

2016-04-29 16:00:28 781

原创 CF#345 div2 A\B\C题

A题:贪心水题,注意1,1这组数据,坑了不少人#include #include using namespace std;int main(){ int a1,a2; while(cin>>a1>>a2) { int i=0; int b = max(a1,a2); int s = min(a1,a2); if(b==1 && s

2016-04-29 16:00:22 191

原创 动态规划中的0-1背包模型

看完题后能否形成一个清晰思路的关键就在于能否根据题意的描述构建出一个恰当的模型,适合这道题目本身同时又能联系自己之前头脑库中的模型。而对于01背包这类模型来说,形成的关键思维就在想最后一个n,即用一种抽象的语言把最终的结果给描述出来。  01背包的例子就不举了,这里先给出一个简单的01背包变形的例子:    按照之前的逻辑,我们用抽象的语言描述这道题的结果就是:给定一个长度为n的数列,

2016-04-29 16:00:14 539

原创 hdu-1800

思路:这题被坑的不轻。首先花了一段时间想明白了思路是要找出现次数最多数字,以为这题就这样解决了,结果发现每个数字的最大长度是30,long long都装不下,因此就要用字符串来保存处理。然后在insert的时候进行一下计数就可以了最关键的地方是struct内的构造函数中,在初始化next数组的时候,一定要面面俱到!不然漏掉哪个,如果没有初始化,就相当于为空指针,就会出现内存泄露,就因为

2016-04-29 16:00:08 185

原创 hdu-4287 Intelligent IME

思路:AC了很爽。一开始看题的时候把要求的东西给搞反了,是用字母去找相应的数字出现次数。只要用数字构建个Trie树,然后将每次输入进来的字母字符串给转换成数字,然后search一下就可以。其中要注意end和id的灵活运用 AC代码:#include #include using namespace std;struct node{ int

2016-04-29 16:00:02 158

原创 hdu-2846 Repository

思路:好题,必须记一笔。这题有两个之前没有接触过的字典树新变形。第一个是insert的方式,不再只是单单的将一整个单词都插进去,而是从单词的第一个字母开始往后遍历,依次插入第i个字母到末尾的单词,这样做就可以满足题目中“substring”的要求,即将“substring”的问题转换为我们熟悉的字典树可以解决的“前缀”问题。第二个是标记每个char* s所属的原始字符串,这种做法可

2016-04-29 15:59:58 160

原创 hdu-1251

思路:Trie树模板的小变形,在模板中有一个思维拓展的点要值得我们注意,就是每一个节点的e值,在本题中他们不再用来标记单词的结尾,而是用来计数,因为对于Trie树的某一个确定的位置,一个给定的单词只能走过一遍,因此这样记录可以确定一个位置被多少个单词给“经过”,然后找前缀的时候只要遍历到的最后一个字母所在的位置,输出他的count即可。 AC代码:#include #inc

2016-04-29 15:59:52 379 1

原创 hdu-1247

思路:字典树模板题#include #include #include #define MAX 500007using namespace std;struct node{ int e; struct node* next[26];};node* root;char str[MAX][50];void Insert

2016-04-29 15:59:46 233

原创 hdu2444The Accomodation of Students

思路:二分图判断+最大匹配模板二分图判断的方法很好想,没有离散的基础凭空给你个图让你判断也很容易想到染色法,简单的介绍下就是用queue来做,标记一个点为x则他所有的邻点都为x',然后递归的执行下去。接下来会面临一个比较有趣的问题,我们确定现在的图是二分图,然后我们要求它的最大匹配——这里涉及到一个很关键的问题,就是一个图我们说他自己是一个二分图,那么是他内部的一些点会分成两部分,分别

2016-04-29 15:59:40 146

原创 hdu-1598

思路:首先如果想到了Kruskal算法,那么下一步我们可能马上会想:那我们就从头开始写这个算法吧。然后一写就很容易发现一个问题——如果按照正常的Kruskal算法来做,那么start到end的舒适度中的那个“最小边”就只能是所有边中最小的那个,而这是明显不符合逻辑的事情,所以我们就会接着想,如果不是这个最小边,那它会是哪个边——当然是更大的边了,于是我们便开始按照从小到大的顺序去依次遍历所有的

2016-04-29 15:59:35 208

原创 POJ-2240

ArbitrageTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 19063 Accepted: 8069DescriptionArbitrage is the use of discrepancies in currency exchange rates t

2016-04-29 15:59:29 162

原创 hdu-3790最短路径问题

Problem Description给你n个点,m条无向边,每条边都有长度d和花费p,给你起点s终点t,要求输出起点到终点的最短距离及其花费,如果最短距离有多条路线,则输出花费最少的。  Input输入n,m,点的编号是1~n,然后是m行,每行4个数 a,b,d,p,表示a和b之间有一条边,且其长度为d,花费为p。最后一行是两个数 s,t;起点s,终点。n和m为0时输入结束。

2016-04-29 15:59:22 233

原创 HDU-1869六度分离

Problem Description1967 年,美国著名的社会学家斯坦利·米尔格兰姆提出了一个名为“小世界现象(small world phenomenon)”的著名假说,大意是说,任何2个素不相识的人中间最多只隔着6个人,即只用6个人就可以将他们联系在一起,因此他的理论也被称为 “六度分离”理论(six degrees of separation)。虽然米尔格兰姆的理论屡屡应验,一直也有

2016-04-29 15:59:16 186

原创 编程题#2: 魔兽世界之二:装备

描述魔兽世界的西面是红魔军的司令部,东面是蓝魔军的司令部。两个司令部之间是依次排列的若干城市。红司令部,City 1,City 2,……,City n,蓝司令部两军的司令部都会制造武士。武士一共有 dragon 、ninja、iceman、lion、wolf 五种。每种武士都有编号、生命值这两种属性。有的武士可以拥有武器。武器有三种,sword, bomb,和arrow,编号分别为

2016-04-29 15:59:10 437

原创 程序设计实习MOOC / 继承和派生——编程作业 第五周程序填空题1

描述写一个MyString 类,使得下面程序的输出结果是:1. abcd-efgh-abcd-2. abcd-3.4. abcd-efgh-5. efgh-6. c7. abcd-8. ijAl-9. ijAl-mnop10. qrst-abcd-11. abcd-qrst-abcd- uvw xyzaboutbigmetakea

2016-04-29 15:59:04 1291

原创 【转】C++动态创建二维数组,二维数组指针

原作者博客:蒋国宝的IT技术博客今天完成一道题目需要自己用指针创建一个二维的数组,不得不承认指针的确是恶心。 int **result; int row = 4; int col = 5; result = new int*[row]; for (int i=0; i) { result[

2016-04-29 15:58:58 147

原创 HDU-2571命运

Problem Description穿过幽谷意味着离大魔王lemon已经无限接近了!可谁能想到,yifenfei在斩杀了一些虾兵蟹将后,却再次面临命运大迷宫的考验,这是魔王lemon设下的又一个机关。要知道,不论何人,若在迷宫中被困1小时以上,则必死无疑!可怜的yifenfei为了去救MM,义无返顾地跳进了迷宫。让我们一起帮帮执着的他吧!命运大迷宫可以看成是一个两维的方格阵列,如下图所示:

2016-04-29 15:58:53 141

原创 HDU-1203 I NEED A OFFER!

Problem DescriptionSpeakless 很早就想出国,现在他已经考完了所有需要的考试,准备了所有要准备的材料,于是,便需要去申请学校了。要申请国外的任何大学,你都要交纳一定的申请费用, 这可是很惊人的。Speakless没有多少钱,总共只攒了n万美元。他将在m个学校中选择若干的(当然要在他的经济承受范围内)。每个学校都有不同的申 请费用a(万美元),并且Speakless估计

2016-04-29 15:58:47 114

原创 HDU-1003 Max Sum

Problem DescriptionGiven a sequence a[1],a[2],a[3]......a[n], your job is to calculate the max sum of a sub-sequence. For example, given (6,-1,5,4,-7), the max sum in this sequence is 6 + (-1) + 5 +

2016-04-29 15:58:43 95

原创 HDU2196-Computer

原题连接:http://acm.hdu.edu.cn/showproblem.php?pid=2196思路:好了,无敌了,经过昨晚4个钟头+今上午1个小时的奋战,这题终于被我AC了收获的确是不小。。呵呵一步步的总结吧,题意就是让你求给定树中某一个点到其他任意点的最大权值(1)总体的思路。一个点到其他任意点的最大权值只有两种可能性,一个是这个值来自的子树,另一个是这个值来

2016-04-29 15:58:34 117

原创 HDU-1520 Anniversary party

Problem DescriptionThere is going to be a party to celebrate the 80-th Anniversary of the Ural State University. The University has a hierarchical structure of employees. It means that the superviso

2016-04-29 15:58:28 178

原创 POJ-魔兽世界之一:备战

描述魔兽世界的西面是红魔军的司令部,东面是蓝魔军的司令部。两个司令部之间是依次排列的若干城市。红司令部,City 1,City 2,……,City n,蓝司令部两军的司令部都会制造武士。武士一共有 dragon 、ninja、iceman、lion、wolf 五种。每种武士都有编号、生命值、攻击力这三种属性。双方的武士编号都是从1开始计算。红方制造出来的第n个武士,编号就是n。同样

2016-04-29 15:58:24 255

原创 POJ3278-Catch That Cow

DescriptionFarmer John has been informed of the location of a fugitive cow and wants to catch her immediately. He starts at a point N (0 ≤ N ≤ 100,000) on a number line and the cow is at a point K

2016-04-29 15:58:18 112

原创 HDU-2612 Find a way

Problem DescriptionPass a year learning in Hangzhou, yifenfei arrival hometown Ningbo at finally. Leave Ningbo one year, yifenfei have many people to meet. Especially a good friend Merceki.Yifenfei’

2016-04-29 15:58:12 96

原创 HDU-1241Oil Deposits

DescriptionGeoSurvComp地质调查公司负责探测地下石油储藏。 GeoSurvComp现在在一块矩形区域探测石油,并把这个大区域分成了很多小块。他们通过专业设备,来分析每个小块中是否蕴藏石油。如果这些蕴藏石油 的小方格相邻,那么他们被认为是同一油藏的一部分。在这块矩形区域,可能有很多油藏。你的任务是确定有多少不同的油藏。Input输入可能有多个矩形区

2016-04-29 15:58:05 146

原创 leetcode-Consecutive numbers

Write a SQL query to find all numbers that appear at least three times consecutively.+----+-----+| Id | Num |+----+-----+| 1 | 1 || 2 | 1 || 3 | 1 || 4 | 2 || 5 | 1 ||

2016-04-29 15:57:59 103

原创 SQL-Delete Duplicate Emails

Write a SQL query to delete all duplicate email entries in a table named Person, keeping only unique emails based on its smallest Id.+----+------------------+| Id | Email |+----+-----

2016-04-29 15:57:49 170

原创 leetcode-Rising Temperature

Given a Weather table, write a SQL query to find all dates' Ids with higher temperature compared to its previous (yesterday's) dates.+---------+------------+------------------+| Id(INT) | Date(DAT

2016-04-29 15:57:42 173

原创 leetcode-Second Highest Salary

Write a SQL query to get the second highest salary from the Employee table.+----+--------+| Id | Salary |+----+--------+| 1 | 100 || 2 | 200 || 3 | 300 |+----+--------+Fo

2016-04-29 15:57:36 113

原创 SQL-Customers Who Never Order

Suppose that a website contains two tables, the Customers table and the Orders table. Write a SQL query to find all customers who never order anything.Table: Customers.+----+-------+| Id | Name

2016-04-29 15:57:30 115

原创 SQL-Duplicate Emails

思路:两种思路,可以给当成两个表也可以给当成一张表来做group by就是按照某个属性给表分个组,然后having语句的含义是“对于每一个group”怎么怎么样 补充知识:count(column),count(distinct column),count(*)的区别对于符合条件(通过where或者group by+having选出来)的一系列的元组,count(*)的作用是计

2016-04-29 15:57:25 128

原创 SQL-Employees Earning More Than Their Managers

思路:今天复习数据库突然想起来leetcode上数据库的题目,就找来做了(1)给表取别名格式见code,这在自身连接的时候是很有必要的(2)自身连接from语句后面相当于接了“一张表”,如果是多个表,就相当于形成了他们的笛卡尔积然后通过where语句选择出所需要的行,通过头上的select语句选出相应的列 # Write your MySQL query s

2016-04-29 15:57:21 100

原创 HDU-3787(字符串模拟)

Problem Description给定两个整数A和B,其表示形式是:从个位开始,每三位数用逗号","隔开。现在请计算A+B的结果,并以正常形式输出。  Input输入包含多组数据数据,每组数据占一行,由两个整数A和B组成(-10^9   Output请计算A+B的结果,并以正常形式输出,每组数据占一行。  Sample Input-234

2016-04-29 15:57:16 132

空空如也

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

TA关注的人

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