自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

圣人不仁,使草胜豆苗稀。

百年前宁静的一个夜,巨变前夕的深夜里,枪炮声敲碎了宁静的夜,四面楚歌是姑息的剑。

  • 博客(219)
  • 资源 (3)
  • 收藏
  • 关注

原创 【杂七杂八的整合】Ubuntu Linux 12.04中的一些使用技巧

1、全局菜单关闭与打开关闭:sudo apt-get autoremove appmenu-gtk appmenu-gtk3 appmenu-qt但是对于firefox,还需要在“扩展组件”-“扩展”里面把“global menu bar integration”这一项禁用打开:sudo apt-get install appmenu-gtk appmenu-gtk3 appmenu-

2014-03-11 20:01:59 980

原创 【备忘】GDI位图绘制四部曲

1、加载位图2、建立兼容DC3、选择之前的位图对象4、用贴图函数BitBlt()HBITMAP bitmap=(HBITMAP)LoadImage(NULL,L"Name.bmp",IMAGE_BITMAP,high,length,LR_LOADFROMFILE);HWND tmp=CreateCompatiable(g_hdc);SelectObject(tmp,bitmap

2014-02-23 11:20:43 1241

原创 【备忘】一个标准GDI窗口框架

在win32窗口基础上增加了hdc,备忘留作以后开发GDI程序使用。#include const int TAR_HIGH=800;const int TAR_WEIGHT=600;const wchar_t TAR_TITLE[]=L"FFFF团力作-建大英雄传";HDC g_hdc=NULL;void Game_Paint(HWND hwnd){}bool G

2014-02-18 19:09:06 1128 1

原创 【备忘】一个标准的win32窗口框架

#include const int TAR_HIGH=800;const int TAR_WEIGHT=600;const wchar_t TAR_TITLE[]=L"FFFF团力作-建大英雄传";LRESULT CALLBACK SdjzuProc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam){ switch(messa

2014-02-17 11:19:06 1686

原创 【PHP自学笔记1】如何搭建配置PHP环境、云平台发布、第一个HelloWorld程序

笔者自学php的备忘录,共享出来便于自己复习,也便于他人参考。

2014-02-13 15:15:15 7411 1

原创 【继续找状态做简单题】HDU 1052 Tian Ji -- The Horse Racing

继续找状态,慢慢恢复:点击打开链接策略证明如下(声明:PPT为转载):#include #include #include using namespace std;int tian[1001];int qi[1001];bool cmp(int a,int b){ return a>b;}int main(){ int hors

2014-02-09 15:16:43 1256

原创 【恢复状态】第三届山东省ACM竞赛Problem J——Contest Print Server

回来回复一下状态,当时比赛的时候并没有注意0的情况,注意了这个之后可以模拟过:#include #include #include using namespace std;class teamnode{ char name[30]; int num;};teamnode team[105];int main(){ int t,n,s,x,y,mod

2014-02-08 17:11:14 937

原创 【备忘】公司笔试常考算法重点简介

一、数据结构方面:一维数据结构:set,array,queue,stack,linked list.特性(如set不允许重复元素)、stack先进后出、queue后进先出,linked list的各种姿势(双向、单向、循环)……常考问题:1、找出一个单链表中的中间节点快慢指针为最优解法,即两个指针、一个p=p->next 另一个p=p->next->next,第二个p,whil

2013-09-27 20:59:27 1351

原创 【水】POJ 2000——Gold Coins

来源:点击打开链接水过……没法再水的题,会用数组就行了。#include #include #include using namespace std;int caler[10001];void init(){ memset(caler,0,sizeof(caler)); int adder=1; int day=0; int count=0; caler[

2013-09-23 19:30:20 1586

原创 【dfs】poj1753——Flip Game

来源:点击打开链接网络赛已被虐瞎……做点经典题找自信。最多有2^16种状态,DFS/BFS都可以,参考了小優YoU的博客:#include #include using namespace std;bool mat[6][6];int step;bool flag;int dirc[5]={0,0,1,-1,0};int dirr[5]={1,-1,0,0,0};

2013-09-16 20:32:33 1105

原创 【水】HDU 2099——整除的尾数

来源:点击打开链接数据范围小,枚举水过就行了……不过要注意格式!#include #include #include #include using namespace std;int ans[100];int main(){ int a,b; while(cin>>a>>b) { memset(ans,0,sizeof(ans)); if(a==0 && b==

2013-09-09 20:06:26 1046

原创 【改了一天的拓扑排序】POJ 1094——Sorting It All Out

来源:点击打开链接不知道怎么回事,wa了整整一天。。在绝望的时候AC了。重点是分步处理和三种情况的判断。1、判断是否成环,成环了直接输出错误信息。2、然后一条边一条边的加入,进行拓扑排序,如果出度为0的点多于两个,继续判断之,如果到所有点都加入了但仍然没有判断出来,输出第三种情况。3、以上两种情况都不存在,输出拓扑排序的路径信息。#include #include #i

2013-09-06 15:54:11 1133

原创 【拓扑排序】HDU 1285——确定比赛名次

来源:点击打开链接做完这道题,可以对无环图的拓扑排序有所了解。无前驱的顶点优先的拓扑算法主要分为三步:1、找到一个入度为0的顶点并且输出之。2、在图中删除该顶点,并且删除与该顶点有关的边。3、重复步骤(1)(2),直到剩余的网中不存在没有前驱的顶点。这个题点集比较集中,可以采用邻接矩阵的形式。#include #include #include using nam

2013-09-05 11:30:51 1065

转载 【继续划水】为什么我们同时搞acm,结果是你就可以去final

“为什么我们同时搞acm,结果是你就可以去final,我就。。。。”“我在有一定基础之后,就不看解题报告了”怎样才算是有一定基础?500题?1000。原来是这样。。

2013-08-28 18:43:54 1099

原创 【打渔】CodeForce Round 197 Div.2 Problem_A

来源:点击打开链接划了一周的水了。。做一些比赛找找状态吧,要跪的节奏啊。刚开始看的时候没有发现只有1,2,3三种字符。代码流畅度没有以前高了,做这种水题居然还要想半天怎么放加号。。#include #include #include #include using namespace std;int saver[200];int main(){ string t

2013-08-28 18:42:19 1519

原创 【伪dfs】HDU 2571——命运

来源:点击打开链接看上去像是搜索,但是还是用的dp。建图,然后观察发现下一步的状态,取决于上一步的状态。其中dp[1][1]=原图的起点。然后for each i->m j->n 2注意初始化为-inf,开始只从0->m,wa了一遍,应该是从0至少到m+1进行初始化。#include #include #include #include using namespace st

2013-08-17 10:17:25 973

原创 【排序+dp】HDU 1160——FatMouse Speed

来源:点击打开链接这个题是special judge,输出一个合法结果就行,不用按照样例来的。。先对体重和速度进行排序:定义状态dp[i]表示以当前mouse为终点形成的最长speed序列长度状态dp[j]表示i之前的符合要求的mouse为终点的最长的speed序列长度那么有状态转移方程,if(dp[i]; 就是个lis问题了.#include #incl

2013-08-16 20:30:50 1159

原创 【周全考虑】CodeForces 245B——Internet Address

题目要求是将一串字母转化成网址——形如格式http(ftp)://xxx.ru/xxxx的样子,看上去很简单,可是还是很容易出错。刚开始找的时候是按照寻找第一组http/ftp,然后寻找第一个ru,构成网址,但是报错了,反例如下:httpruc所以不能寻找第一个网址,也就是说尽量避免.ru之前没有东西,这样是不合法 的。然后注意http是四个字符,ftp只有三个字符,所以不能固定。。

2013-08-16 16:02:50 1077

原创 【五边形定则应用2】HDU 4602——Partition

来源:点击打开链接(MU1)发现多校很喜欢考整数划分的问题。与点击打开链接4651一样,用找规律的方式也可以找出来,p(1,k):1 (k从1至n)  p(2,k):2,1 p(3,k):5,2,1 p(4,k):12,5,2,1  p(5,k):28,12,5,2,1…… p(n,1)= 2*f(n-1)+2^(n-3) p(n,k)=a_n = 2^(n-1) + (n-2)*2^

2013-08-16 09:20:41 1033

原创 【水一发next_permutation】poj 1146——ID Codesm

来源:点击打开链接求字典序下一位,没有直接输出没有。全排列函数秒水过。#include #include #include #include using namespace std;int main(){ int testcase; string tar; while(cin>>tar && tar!="#") { if(next_permutation(tar.

2013-08-14 16:43:56 1021

原创 【找规律】HDU 4662——MU Puzzle

来源:点击打开链接这个题目的来源是人工智能领域MU猜想。比赛的时候也参考了相关资料,可是最后差一点没有把规律推出来。注意到以下几个性质。第一,MI怎么变换M永远只能在第一位。第二,因为变换时只能在I和U之间变换,因此,除了第一个是M以外,后面如果有字符串不是U、I以内的话永远不可能变换得到。第三,U可以看成是3个I,无论是I先变换成U再操作还是转化成一定数量的I,最后再准换成一定数量的U即

2013-08-14 15:32:55 1954

原创 【set+贪心】HDU 4268——Alice and Bob

来源:点击打开链接去年网络赛第一场的第二个题。当时也想到了用贪心,可是超时了,现在复习了起来,发现可以用mutliset,先把alice和bob出的卡片按长度排序,再把所有剩下的矩形队进行贪心,贪当前alice与bob差距最小的矩形队。用到了upper_bound()参数。#include #include #include #include #include using n

2013-08-12 10:04:08 1054

原创 【ACMclub周赛5】Problem D——拼火柴

题目来源:点击打开链接dfs,注意剪枝。比如加起来余4要等于0,网上许多题解讲的比较详细。#include #include #include using namespace std;bool visited[25];int stick[25];int des_len;int sticknum;bool cmp(int a,int b){ return b>a;

2013-08-11 10:22:27 1507 1

原创 【ACMclub周赛5】Problem E——TSP旅行商问题

题目:点击打开链接题目简化一下就是一个旅行者可以在任意一点出发,遍历所有顶点后回到原点,问可以走的最短路程。很著名的NP-HARD旅行商问题。TSP问题最简单的求解方法是枚举法,时间复杂度是O(n!),其余的解都是无法证明的最优近似解,但是可以直接拿来用,此外还有模拟退火,floyd+DP,Edmonds-Johnson等各种方法,贴个模板吧,可以用poj 2404练一下手。

2013-08-11 09:47:12 3956

原创 【ACMclub周赛5】Problem C——求两圆的交叉面积

题目:点击打开链接参考了别人的推导过程,粘贴如下:假设半径小的圆为c1,半径大的圆为c2。 c1的半径r1,圆心坐标(x1,y1)。c2的半径r2,圆心坐标(x2,y2)。 d为两圆圆心连线的长度。 相交面积为S d=sqrt((x1-x2)^2+(y1-y2)^2) (1)如果r1+r2 那么两圆相离,相交面积S=0 (2)如果r2-r1>=d 那么半径小的圆内含半径大的圆,那么

2013-08-11 09:33:46 2227

原创 【ACMclub周赛5】Problem A——购物停车

来源:点击打开链接水题一道,由推断可知,如果停车点在首尾两个点的外边,那么会至少行进2*(Pi-P0)+K(i为最右面的商铺,K不定反正大于0),而设在内部,只需要行进最多2*(Pi-P0)的距离,而一个来回是一定要走的,关键是第二个来回怎么尽可能的省出来,数据不大,暴搜就行了。#include #include #include #include using namespace

2013-08-11 09:29:48 1222

原创 【处理空格】poj2503——Babelfish

题目:点击打开链接很水的一道题,但是处理两行之间的空格花了许多功夫,最后还是用了char,因为可以自由修改,相比string需要用insert函数,更加灵活一些。也可以用hash来做,不过有些麻烦就是了。#include #include #include #include using namespace std;int main(){ char d1[50],d2[50]

2013-08-10 10:31:21 1080

原创 【公式题】HDU 4651—— Partition

题目:点击打开链接这个题目来自多校练习5,求整数划分的种类数,二维DP一定超时,一维打表试了试(参考poj上吃蛋糕的题,范围是5000/5S),大于120KB,没法提交。找了半天,当时明明在wiki找到公式了(传说中的五边形数),但是却没有转化好,惨遭wa。链接:点击打开链接#include #include #include using namespace std;

2013-08-08 14:57:33 1856

转载 小学生玩ACM----栈和队列

很多人都看过栈和队列了吧?那岂不是我没有说的意义了?那好,我就做这个记录,等我老了还可以给孙子学栈和队列,嘿嘿     栈和队列一个先进后出,一个先进先出,栈就是一个狗洞,你爬进去之后因为空间太小不许你翻身,所以想出来就的往后挪,当然要是有人用棍子顶住你菊花那你就出不去了,嘿嘿,队列就是你人品好一点,找到的这个狗洞的主人比较勤快,已经把洞挖通了,所以对面就是出口,但是你一进去之后狗狗就发现你了

2013-08-04 19:51:00 3749

原创 【优先队列】HDU 1873——看病找医生

来源:点击打开链接看路径记录的BFS之前,再看一遍优先队列的用法。优先队列的排序规则可以用运算符重载的方式完成,通常意义下,应该用friend bool operator #include #include #include #include using namespace std;class hospital{ public: int lev

2013-08-04 15:47:28 1251

原创 【多校练习4签到题】HDU 4642—— Fliping game

来源:点击打开链接看上去很难,比赛的时候光看hehe了,也没有想。但是仔细想想,是可以想出来的。一个棋盘上每个格子摆放一个硬币,硬币有正面1和反面0之分。现在两个人可以按照规则翻硬币,选择(x,y),要求(x,y)的硬币必须是正面,那么从(x,y)向右下角所有的硬币都被翻转。知道某个人无法翻(所有硬币都是反面)为止,这个人判输。有一种特殊情况,那就是右下角,每次都被反转。无论如

2013-08-04 11:22:07 1268

原创 【最长上升子序列】HDU 1087——Super Jumping! Jumping! Jumping!

来源:点击打开链接最长上升子序列的考察,是一个简单的DP问题。我们每一次求出从第一个数到当前这个数的最长上升子序列,直至遍历到最后一个数字为止,然后再取dp数组里最大的那个即为整个序列的最长上升子序列。我们用dp[i]来存放序列1-i的最长上升子序列的长度,那么dp[i]=max(1,dp[j])+1,(j∈[1, i-1]); 显然dp[1]=1,我们从i=2开始遍历后面的元素即可。这个

2013-08-03 19:26:13 1162

原创 【斐波那契DP】HDU 4639——HeHe

题目:点击打开链接多校练习赛4的简单题,但是比赛的时候想到了推导公式f(n)=f(n-1)+f(n-2)(就是斐波那契数列),最后却没做出来。首先手写一下he(不是hehe)连续时的规律。0-1 1-1 2-2 3-3 4-5,斐波那契无误。比赛的时候没有分清楚连续的he和间断的he的不同,只有连续的he才能用斐波那契数列来表示,而间断点应该重新计算he出现的次数,最后根据组合数的原理

2013-08-03 11:20:44 1568

原创 【剪枝】HDU 1010——tempter of the bone

来源:点击打开链接看上去数据规模很小,但是必须要剪枝,否则直接爆TLE。通过这个题可以练习奇偶剪枝。另外:还有一个优化方式,如果所有步数走完了门还没关,则直接返回结果"NO".#include #include #include #include using namespace std;int n,m,tarstep;int tari,tarj;int si,sj;

2013-08-02 15:55:46 775

原创 【三维bfs】HDU1253——胜利大逃亡

来源:点击打开链接三维BFS,比起二维BFS来说多了一维,但是也没什么难度。第一次卡时间过,在大神的指导下明白了,还可以进行优化。1、搜索方向变成了6个。2、需要考虑到出口处为墙的情况。3、如果有这个会大大提高效率:if(a+b+c-3>tarstep) {printf("-1\n");continue;}(起点与终点间最短路径大于时间限度)CODE:#include

2013-08-02 10:37:36 792

原创 【百WA然后AC】HDU 1728——逃离迷宫

来源:点击打开链接这个怨念留的实在是太久了,得4-5天了,怎么改都不A,终于在今天AC了。这个题有好多梗:1、输入的时候竟然是反着的,先列后行。2、计算转弯次数就要一口气走到头,而不是半路直接+转弯次数,因为初始的行走方向是不一定的。3、当起点等于终点的时候要直接返回正确,否则会报错的。其他的看上去就是很水的BFS了。。#include #include #incl

2013-08-01 10:02:11 1056

原创 【BFS终于变水】HDU 1242——Rescue

来源:点击打开链接终于把BFS看水了,包括路径优化和奇偶剪枝。一年了也就看明白了这点东西,so sad。。。。#include #include #include #include using namespace std;int visited[205][205];char mat[205][205];int n,m;int dir[4][2]={-1,0,1,0,0,1

2013-07-30 11:02:31 822

原创 Poj 1852——Ants

来源:点击打开链接简介:很多的蚂蚁都在长度为L(cm)的膀子上爬行,它们的速度都是1cm/s,到了棒子终端的时候,蚂蚁就会掉下去。如果在爬行途中遇到其他蚂蚁,两只蚂蚁的方向都会逆转。已知蚂蚁在棒子的最初位置坐标,但是我们不知道他们会往哪一个方向爬。请求出所有蚂蚁掉下去的最短时间和最长时间。由题意可知,蚂蚁数的上限为2^1000000,所以直接枚举肯定不行。其实换一个角度就可以想出来,蚂蚁的

2013-07-28 13:58:07 1120

转载 经典过桥问题的思路解析

一、问题  在漆黑的夜里,四位旅行者来到了一座狭窄而且没有护栏的桥边。如果不借助手电筒的话,大家是无论如何也不敢过桥去的。不幸的是,四个人一共只带了一只手电筒,而桥窄得只够让两个人同时过。如果各自单独过桥的话,四人所需要的时间分别是1、2、5、8分钟;而如果两人同时过桥,所需要的时间就是走得比较慢的那个人单独行动时所需的时间。问题是,如何设计一个方案,让这四人尽快过桥。  假设

2013-07-28 11:11:51 3624

原创 ACM CLUB第四周周赛题解_部分

ACM CLUB的一个小比赛,每周一次.

2013-07-28 11:01:25 4646 1

51单片机一个好用的教程

这个是我个人买的单片机开发板中自带的教程,个人感觉比许多市面上流通的教材易懂许多(从C到汇编的顺序可能更适合半路出家的人),推荐一下。

2012-04-12

背包问题九讲V1.02

关于背包问题的一个PDF,读完后可对DP和动态规划有很大的帮助。PASCAL与C的实现。

2012-08-15

KMP算法入门

应该算是KMP算法中一个最清楚的版本了,对next数组的详解尤为突出。

2013-01-22

空空如也

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

TA关注的人

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