- 博客(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
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅