自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 收藏
  • 关注

转载 静态库与动态库的区别

静态库与动态库的区别 首先来看什么是库,库(Library)说白了就是一段编译好的二进制代码,加上头文件就可以供别人使用。 什么时候我们会用到库呢?一种情况是某些代码需要给别人使用,但是我们不希望别人看到源码,就需要以库的形式进行封装,只暴露出头文件。另外一种情况是,对于某些不会进行大的改动的代码,我们想减少编译的时间,就可以把它打包成库,因为库是已经编译好的二进制了,编译的时

2017-05-23 19:16:38 512

转载 指针的大小到底是由谁决定?是多少?

转载与百度知道 https://zhidao.baidu.com/question/1765652090771937940.html 应该说这是一个非常基础的问题,教科书上说指针大小和机器字长相同,即32位机指针长度为4字节!但是对不对呢?为什么是这样? 搜了一下相关资料。。。居然发现回答不统一,很多人也同样是糊里糊涂。 下面对这个问题做一个系统的整理和分析: 首先,

2017-05-07 13:57:17 593

原创 归并排序

快速排序、堆排序和归并排序理论上时间复杂度为O(nlogn ),是内存占用较少的情况下,速度最快的排序算法。当然桶排序的时间复杂度为O(n),但是需要牺牲巨大内存。

2017-03-12 14:09:23 302

原创 快速排序

快速排序、堆排序和归并排序理论上时间复杂度为O(nlogn ),是内存占用较少的情况下,速度最快的排序算法。当然桶排序的时间复杂度为O(n),但是需要牺牲巨大内存。

2017-03-12 14:02:24 360

原创 冒泡排序

时间复杂度:O(n^2).

2017-03-12 13:59:21 361

原创 堆排序

快速排序、堆排序和归并排序理论上时间复杂度为O(nlogn ),是内存占用较少的情况下,速度最快的排序算法。当然桶排序的时间复杂度为O(n),但是需要牺牲巨大内存。

2017-03-12 13:57:54 304

原创 简单选择排序

时间复杂度:O(n^2).

2017-03-12 13:50:48 234

原创 希尔排序

时间复杂度:小于O(n^2).

2017-03-12 13:48:54 222

原创 直接插入排序

时间复杂度:O(n^2).

2017-03-12 13:46:02 236

原创 HDU 1045 Fire Net

有暴力搜索和二分图匹配两种解题思路。用dfs搜比较容易,而二分图则是一种更为优化的算法。刚刚接触二分图,发现这种思路很巧妙,以后要多加练习。下面是dfs求法#include#includeusing namespace std;char map[5][5];int visitr[5]; //记录横坐标int visitl[5]; //记录纵坐标int maxn,

2016-05-10 19:56:25 896

原创 POJ 1651 Multiplication Puzzle

题意:给你一排数(用数组a表示),最边上的两个数不动,将中间的数全部取出,且每次去一个数。每取一个数a[i],sum就加上三个数的乘积(此时与a[i]相邻的两个数以及a[i])。求最小的sum。区间dp;思路:一段区间a[i]——a[j]中取一个数a[k],若能实现a[i]*a[k]*a[j],则i到k以及k到j之间的数都已取出,若以dp[i][j]记录sum的最小值,则dp[i][j

2016-05-04 16:20:21 318

转载 [转]matlab的Virtual Reality(虚拟现实)工具箱的应用简介

http://www.ilovematlab.cn/thread-9073-1-1.htmlmatlab的Virtual Reality(虚拟现实)工具箱的应用简介这几天在mathtools里,发现讨论区和精华区里都没有这个工具箱的讨论,所以我想尽我所能介绍一下虚拟现实工具箱在matlab中的应用,也算是上任板斧来带给大家的第一个好东东。    先介绍一下虚拟现实,

2016-05-04 11:45:54 3109 1

原创 POJ 2955 Brackets

题意:括号匹配,两个括号能匹配上,和就加二。一道区间dp题,刚刚入门,说一下区间dp的思路,就是:不断遍历整个区间,第一次遍历求出子区间长度为1的区间的最大值,第二次遍历求出子区间长度为2的区间的最大值,以此类推,直到求出区间长度为整个区间的最大值。

2016-05-03 14:58:30 374

原创 浙江省赛 Defuse the Bomb

题目:The bomb is about to explode! Please defuse it as soon as possible!There is a display showing a number from 1 to 4 on the bomb. Besides this, there are 4 buttons under the display. Each button

2016-05-03 10:59:23 507

原创 hdu1257 最少拦截系统

求一个序列中不升子序列的个数,贪心思想。和南京理工大学第八届校赛sequence相似,那个题求的是不降子序列个数,可以看一下加深理解题目链接。下面是本题代码:#include #include #includeusing namespace std;const int maxn=30000;int dp[1010],m;int main(){ int n,b;

2016-05-02 20:59:10 270

原创 hdu 1260 Tickets

本题考虑当前的人是否和前面的人一起买票,所以有两种可能动规方程:dp[i]=min(dp[i-1]+a[i],dp[i-2]+b[i]);代码如下:#include#include#include#includeusing namespace std;int a[2010],b[2010];int dp[2010];int main(){ int t

2016-05-02 20:49:14 353

原创 hdu 1176 免费馅饼

这道题题解有很多,但我发现大多数都是错误的,下面是我的理解,恭迎大牛来判别正误。下面我就列举错误代码:#include#include#include#includeusing namespace std ;int a [ 100001 ] [ 12 ] ;int f [ 100001 ] [ 12 ] ;int main () { int n ; while

2016-05-02 20:26:40 629

原创 南京理工校赛 sequence

思路:求一个序列中不降子序列的个数,贪心思想,动规求解#include #include #includeusing namespace std;int dp[10100],m;int main(){ int n,b,t; cin>>t; while(t--) { scanf("%d",&n); m=0;

2016-05-02 18:50:25 342

原创 hdu 1114 Piggy-Bank

01背包:一定空间内,每种价值的物品有一个完全背包:一定空间内,每种价值的物品可以选无限个多重背包:01背包和完全背包的组合。由题意可知此题为完全背包,然后。。。。套模板#include#includeusing namespace std;int f[100000]; //根据题意,记录f[i]在用了i空间的情况下的最小价值int main(){ int t

2016-05-02 18:27:07 312

原创 hdu 1087 Super Jumping! Jumping! Jumping!

又是一道模板题!!#include #include const int maxn=1010;int a[maxn],dp[maxn],m,Max;void LICS(){ memset(dp,0,sizeof(dp)); for(int i=0;i<m;i++) { dp[i]=a[i]; for(int j=0;j<i;j++) if(a[

2016-05-02 18:08:20 313

原创 hdu 1069 Monkey and Banana

题意:每行给三个数,可以任意选择为长宽高,求长宽递减,高度和最大的排序方式的高度和。思路就是把所有情况列出来,然后套最长子序列模板就可以了。每行数据可以分成三种情况,开始不理解长度为何取最大值(除去已选的高度值),后来才理解,如果不取最大值,一行数据就不止3种情况了。#include#include#include#includeusing namespace std;str

2016-05-02 17:58:17 360

原创 hdu 1029 Ignatius and the Princess IV

#include#include#include#includeusing namespace std;int dp[1000010];int main(){ int n,b,num; while(scanf("%d",&n)!=EOF) { num=0; memset(dp,0,sizeof(dp)); int

2016-05-02 16:36:45 356

原创 hdu 1024 Max Sum Plus Plus

题意:在一个序列中,求出m个不想交的子序列,使这m个序列的和最大。题意好理解,但递归方程的表示有些令我迷茫看了下大牛们的题解,在这里说一下我的看法。这里我结合代码来说一下: dp[i][j]=Max(dp[i][j-1]+a[j] , max( dp[i-1][k] ) + a[j] ) 0dp[i][j]表示前j个数分成i组时的最大值;dp[i][j-1]+a[j]表

2016-05-02 16:20:29 457

原创 hdu 1160 FatMouse's Speed

题目大意就是求出两条件分别满足上升和下降的最长子序列。解题思路:结构上套模板,细节上的区别有1、想将一个条件排好序,相当于已经判别了一个条件;2,、因为题目要求的是每个数在原序列的位置,所以需要在结构体中提前记录位置,以便于排序后仍能找到位置。另一点是在寻找最长子序列时,记录是由前面哪一个字符发展而来的,以便于能够知道各在排序后的位置。#include #include#inc

2016-05-02 15:13:56 381

原创 2016蓝桥杯 凑算式

题目:       B      DEFA + — + -——— = 10       C       GHI(如果显示有问题,可以参见【图1.jpg】)这个算式中A~I代表1~9的数字,不同的字母代表不同的数字。比如:6+8/3+952/714 就是一种解法,5+3/1+972/486 是另一种解法。这个算式一共有多少种解法?注意:你提

2016-03-24 16:08:27 754

原创 二维数组传参

今天在一代码中发现二维数组竟然可以这样传参,很有趣,先记下来,作为以后的学习参考。比如数组a[4][4];我们如果传的是int* x,那么x[4]其实就是a[1][1]的值。下面就是用这种方法输出数组的所有值。#include#include#includevoid rotate(int* x, int rank){ for(int i=0; i<rank*rank; i++

2016-03-12 18:17:56 441

原创 poj 2478 Farey Sequence

题意是说求出n内所有互质的数,比如给出n,i<n,求与i互质的数的个数Si,需要的结果是S2+S3+....+Sn,就是n个欧拉函数值相加,这里普通求法会超时,需要用筛法求欧拉函数值来做。对于筛法求欧拉函数值,请看大牛网站http://blog.csdn.net/hqd_acm/article/details/5397909,讲解很清晰。

2016-03-10 23:12:14 360

原创 poj 2407 Relatives

DescriptionGiven n, a positive integer, how many positive integers less than n are relatively prime to n? Two integers a and b are relatively prime if there are no integers x > 1, y > 0, z > 0 s

2016-03-10 20:23:33 321

转载 国外程序员推荐:每个程序员都应读的书

原文链接编者按:2008年 8 月 4 日,StackOverflow 网友 Bert F 发帖提问:哪本最具影响力的书,是每个程序员都应该读?  “如果能时光倒流,回到过去,作为一个开发人员,你可以告诉自己在职业生涯初期应该读一本,你会选择哪本书呢?我希望这个书单列表内容丰富,可以涵盖很多东西。”  很多程序员响应,他们在推荐时也写下自己的评语。以前就有国内网

2016-03-09 19:51:33 295

原创 排列序数

排列序数如果用a b c d这4个字母组成一个串,有4!=24种,如果把它们排个序,每个串都对应一个序号:

2016-03-05 14:13:37 1968 1

原创 海盗分金币

海盗分金币有5个海盗,相约进行一次帆船比赛。 比赛中天气发生突变,他们被冲散了。 恰巧,他们都先后经过途中的一个无名的荒岛,并且每个人都信心满满,觉得自己是第一个经过该岛的人。 第一个人在沙滩上发现了一堆金币。他把金币分成5等份。发现刚好少一个金币。他就从自己口袋拿出一个金币补充进去,然后把属于自己的那份拿走。 第二个到达的人也看到了金币,他也和第一个人一样,把所有金币5等分,发现刚好缺少一个金币,于是自己补进去一个,拿走了属于自己的那份。 第三,第四,第

2016-03-05 12:29:16 1252

原创 巨巨来袭

巨巨来袭hcbbt巨巨,正宗GFS,深受万千学妹的爱慕,人们为了得到他的一张照片日思夜想,也没有个结果.如今,巨巨为了帮助无奈的霞姐,做出巨大牺牲.他出了一道思考题,凡是能够解出来的,可以获得巨巨的照片.题意如下:有n个人,巨巨对这些人的身高进行编号,最 矮的为1,以此类推,最高的为n,我们保证每个人的身高都不一样,所以每个人的编号都是不一样

2016-03-05 07:56:52 629

原创 蓝桥杯 猜算式

蓝桥杯 猜算式看下面的算式:□□ x □□ = □□ x □□□它表示:两个两位数相乘等于一个两位数乘以一个三位数。如果没有限定条件,这样的例子很多。但目前的限定是:这9个方块,表示1~9的9个数字,不包含0。该算式中1至9的每个数字出现且只出现一次!

2016-03-04 22:36:06 2266 2

原创 hdu1016 Prime Ring Problem

大体意思是输入一个数n,找到所有排列方式,使得所有相邻数两数之间相加为素数。搜索题,首先用筛法求素数得到所有40以下的素数并记录在prime数组里,prime[i]=1,表示i为素数。然后搜索找到列举所有可能的情况,判断前后两者之间相加是否为素数。每访问一个数,用数组z记录访问标记,令z[i]=1;dfs后令z[i]=0,以便接下来的搜索。注意:第一个数与最后一个数和的判断。

2016-03-03 21:47:17 292

原创 李白打酒

李白打酒话说大诗人李白,一生好饮。幸好他从不开车。一天,他提着酒壶,从家里出来,酒壶中有酒2斗。他边走边唱:无事街上走,提壶去打酒。逢店加一倍,遇花喝一斗。这一路上,他一共遇到店5次,遇到花10次,已知最后一次遇到的是花,他正好把酒喝光了。

2016-03-01 18:35:32 552

空空如也

空空如也

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

TA关注的人

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