自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 资源 (1)
  • 收藏
  • 关注

原创 XServer基本概念 + x11vnc配置远程桌面

前言读研发论文难啊,之前所有的blog都写在了自己的笔记本上,因为觉的写的太好了浪费时间,自己可以看懂就够了,但是白岩松老师的"机会大多数取决于别人背后怎么评价你"和雄子的“将复杂的问题直观的阐述思想”还是让我有了很大的触动。所以以后我会多更新blog,并且尽力将问题讲解透彻。问题起源Xserver可以说是第二次碰到了,之前玩Ubuntu的时候就是各种问题,但是每次都是以重装系统为结果。这次...

2019-11-05 11:56:33 6797 1

原创 leetcode 45 跳跃游戏II 详细题解+证明 0(n)方法

题意给定一个数组(长度n),然后每个数组1个integer(1-k),每个数字表示可以往后走1-a[i]步,求最少多少步走到.输出一个整数表示多少布.动态规划(0(n*k))第一个方法就是使用动态规划的方法来做,但是复杂度很大,而且是最简单的动态规划问题,因此这里不讨论.贪心(0(n))考虑如何贪心,假如当前处于第i个位置,aia_iai​是表示跳跃数,有p,q∈[i+1,i+ai]p ...

2019-03-04 20:51:11 326

原创 ubuntu软件重装小节

最近重转了Ubuntu,所以以后一定要备份好自己的软件,多使用symbol link来链接自己的文件到外部。这里讲解一下自己3天摸索的所得,然后是自己的软件如何使用1.关于dpkg的使用2,你的dpkg出错了,apt获得一堆错误,依赖违反然后一定要记住,apt-get 默认只会安装最新版本的,而不会选择回退版本,所以有很多的dependences都是apt解决不了的。我就是因为这个原因出过问题。还...

2018-04-07 15:41:58 485

原创 进制组合问题(独立验证)[三相组合问题]

问题:有四个砝码和是40,并且可以用天平称出任何[1 , 40]内的重量。求这4个数。(***天平问题)思考:1.天平称重m的本质:m = sigma(i 1 4) [ui] * [ai]  strict [ui]属于{ -1 , 1 , 0 } ;自然想到base进制。那么关键是 : [问题2]天平称重问题对于base^0 , base^1 ...  base^mm,

2017-08-30 12:10:39 331

原创 一些好的文章和网站,留着以后使用

作为一个C++爱好者,怎么可以不知道C++的特性呢。所以这个网站是中文版的C++reference,例如新特性都会出现在这个地方。例如std::move() ;http://zh.cppreference.com/w/cpp/language/value_category

2017-08-02 10:05:59 197

原创 ubuntu的系统升级遇到的问题和解决方案(已解决)

昨天升级一下系统,然后得到的结果是各种错误......一知道今天下午才修好.1.升级之后发现ubuntu直接开不了机了,而且不是在登录处死循环,而是直接在开机时,屏幕无限亮暗交替.很奇怪.         解决方法是:先进入文本模式,可以多个方法,我的方法是通过grub的高级选项,然后选择ubuntu recovery mode,然后点击e建编辑,把ro recovery 替换成为 rw

2017-07-09 17:02:09 3374 1

原创 python写的一个生成cocos2dx的plist的小工具

最近研究了一下cocos2dx,想知道大师的杰作和自己的之前的设计差在哪。以后贴出自己的感悟,用来以后回顾。现在先贴出一个python小工具。自己写的,用来生成一个plist文件,因为手写plist文件实在是太麻烦了。limit : anim.plist只支持format 2  而且  frame的plist也是只支持format2 .目前写的test()函数是把一个spritesheet

2017-07-02 01:36:46 340

原创 C和汇编的双向调用以及一些问题

经过一步一步的写引导扇区,现在已经完成了,接下来的一步是写加载器。加载器loader.bin是加载内核并且设置为保护模式,并且做一些描述符的初始化。但是接下来遇到的问题是如何使用C语言加速汇编的编写。[提外话]这次用汇编的经历简直是尴尬,各种错误,但是一步一步还是克服了,一个一个的debug,了解了'利其器'的重要性。同时还知道了不要盲目迷失在‘器’中,关键还是一个思考的大脑。见另一篇,n

2017-06-12 21:55:30 353

原创 Ubuntu下的bochsdbg安装教程

最近在看自己动手写操作系统,没办法,就是喜欢造轮子和搞底层。因为实在是不喜欢那种懵懵懂懂的感觉。很尴尬啊。。。对于引导扇区进入保护模式的代码自己写了一遍,但是出了问题,肯定要自己调试啊,我的系统是Ubuntu 14.02TLS。所以选择很少,如果是COM调试可以使用DOSBOX,但是只限于一些8086的命令,X86模式的代码不适合,比如xor eax ,eax 的命令解析不了。所以使用了boc

2017-06-09 21:50:20 880 2

原创 51NOD1489搜索的错误

今天写了一个暴力搜索,主要的要点是----找到一个最优的搜索的方法,一般是考虑顺序,但是按照啥作为一个步伐决定了算法的效率。这个题目排除了很多不对的姿势,使用的是特殊的极限数据,这个方法可以用来做排除法,因为他不可以用于验证,唯一的作用就是作为排除的思想和启发的思想。然后代码方面的问题谈一谈,以前就是搜索不怎么样,现在发现,很多的手误(现在很容易发现了,因为更加的仔细了,主要还是不要怕思考

2017-02-02 23:46:42 237

原创 局部变量和全局变量的保证未修改性

对于一个全局变量,如果你要引入,一定要回头去看看去确保这个全局变量没有修改。也就是当你引用一个全局变量,一定要确保他就是你的想要的数值,这个很难保证,但是可以查看所有的比如n,那就查找n = ... 的表达式,那个这一些表达式就要格外注意。特别是额外引入的(写到一半加入的全局变量的引用,更加是容易出错。一定要回头看一下。还有一个解决方法,就是不要使用同名的,使用tn来代替n,这样,但是要注意在合适

2017-01-28 23:41:50 328

原创 对于特殊的边界值特殊考虑的问题

软件工程,其实就是也提到了,那就是边界分析一发。边界的处理是常见的错误,还有if语句也是常见的错误。对于for循环,起始条件和终止条件是最重要的。一定要考虑是从0还是1开始,终止条件是

2017-01-28 22:05:27 613

原创 迭代公式代码解决的常见问题

对于一个迭代问题,首先可以考虑的是是不是可以打表。打表的实质就是针对输入数据的组合数很小的情况(或者是中间某个数值)下,解决多个询问的方法。主要是空间换时间的思想。一般这个问题一个是可以在常数项内解决问题,然后询问远远大于(不太可能,但是也是有概率的) 。但是常常的是一个迭代式,同时也可以暴力求解,这样的话,暴力中的n*T肯定超时,但是迭代的话可以在0(N)中求出所有的可能输入的结果,这样

2017-01-28 21:31:55 687

原创 计算几何类型,圆与三角形的距离 51Nod1298

1.首先,发现了一个错误点,那就是,经常容易忘了平方,比如说这个就是忘了平方,代码中会指出。2.相信自己已经证明过的底层代码库,比如这里的那些abs,CHAJI之类的函数。3.记得分解问题,分解问题是一个解决问题的方法,这正是我所追求的。4.编写代码要分解问题,自顶向下,这样不容易出错,每一步都要仔细,距离一发AC不是梦。5.点积的表示是投影和夹角(x1*x2+y1*y2) , 二

2017-01-24 23:59:03 326

原创 针对搜索的一个常见错误

说来惭愧,ACM一直都单挑能力不行,发现自己的代码能力很差,经常自己写代码不走心,所以容易出现很多的低级错误。这里作为这个栏目的第一篇,我觉得有必要记录自己的常见错误的地方,以后注意力放上面就不容易出问题。今天写了一个搜索题目,看起来比较难,其实很简单,就是普通的最短路添加了一个分值。。对于这个题目,只要在松弛的同时保持最大的score就可以,也是很常见的,我很容易出错的多重if判断。很容易少

2017-01-23 15:38:12 322

原创 特殊IP:127.0.0.1和0.0.0.0注意事项

127.0.0.1作为本机地址,但是只可以处理自己本机的程序的发起的连接。也就是本机的程序的connect("127.0.0.1")才可以连接。用局域网中的自己的ip是链接不了的,返回Socket错误10061.0.0.0.0也就是INADDR_ANY表示的是通配地址。这个地址作为服务器处理的是局域网中IP和本机的127.0.0.1。底层咋实现的我也不知道。但是如果是作为服务器,使用0.0

2017-01-08 12:58:04 904

原创 Java中Serializable和Android中的Socket编程问题

今天我要测试wifi的ping值,所以做了一个socket的Android作为客户端,电脑使用Java作为服务器的一个socket通信测试程序。发现了一些常见的问题:1.Andorid中的socket编程,必须要加INTERNET权限,不然会抛出IOException异常。这个异常一般是看不到的,必须要调试才可以看到内部的文字,所以以后千万不可以忽视异常的处理,不然会很难找到错误。2.

2017-01-07 19:59:32 242

原创 Android全面解析---Fragment(1)显示和基本运用

Fragment是一个主要用来重组UI。支持静态和动态。在Android.app.Fragment包中,一些其他的比较偏的运用就可以自己看android development1.Fragment的生命周期。参数没有写完整,具体的重载可以使用eclipse中的重载快捷方法。生成顺序。1.OnAttach() . 在和Activity关联的时候调用。2.OnCreate() . 做一

2016-12-15 23:22:05 270

原创 DLL技术

DLL的生成:1.__declspec(dllexport)用来声明,和标准export差不多。但是这个是dll中声明向外输出的函数或者是类。2.__declspec(dllexport)是一个修饰词,但是应该到函数的前面,class 和 名字 中间。也就是:class __declspec(dllexport) name ; 3.extern "C" 也是一个修饰词,代表了函数的

2016-12-04 20:40:21 553

原创 做第一个可复用游戏的心得(1) 周二 - 周6

通过一系列的设计。最初的想法终于初见小成。还可以进行调试了。为了方便以后调用自己的模块,这里写一下博客总结一下吧。首先,语言是C++。人物有6个,但是其中一个在打酱油。也就是一共是5个人一起开发。还有一个不会C++所以只好作为游戏设计师。涉及关卡和模式。1.为了实现可复用性和接口无关性。所以我只好使用继承类。obj和obj_state是两个最大的基类。第一个是各种有位置的物体。第二个是

2016-11-19 20:49:47 243

原创 类的接口和面对对象编程的添加复杂度

首先对于第8章的代码,正好写完了一个一模一样的实例。其中使用了接口和抽象的方法。得到了一个易于修改和添加功能的表达式树的模型。代码上传VS2013;现在总结一下:1.首先,对于如果需要使用标志标记的方法实现,必须要严肃的考虑,是不是要利用类的继承来实现。比较两个方法:如果是标记方法,那么就说明一定有共同点,可以提取共同点,如果是不同点不会影响接口设计,就可以不使用。如果

2016-11-14 19:56:51 409

原创 BZOJ2809可合并堆或启发式合并

一个启发式合并的题目。可以使用可合并堆,但是我觉的不必要,唯一 的坑点是,优先队列耗费的内存比multiset太多太多,简直可以被淘汰了。用mutiset直接爆内存。所以。相信科学。发现set可以但是priority_queue不可以直接换掉。;。。。上代码:#include #include #include #include #include #include #inc

2016-09-06 21:26:37 661

原创 在数论中使用筛法

筛法是一个很方便,很快捷的方法,金典的算法很多都是使用晒法来解决的。比如金典的求欧拉函数,求莫比乌斯函数,。以及一些筛素数等。但是什么类型的题目可以使用自己自创的筛法呢。 1.最典型的函数类型 F(x)=∑d|xG(x,d)F(x) = \sum\limits_{d|x}G(x,d)这种类型的函数是金典的筛法使用。你可以这样想,筛法的本质是枚举每个数的同时找到这个数对其他需要这个数的贡献。其实也

2016-09-05 15:30:00 866

原创 编程马拉松17C

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include //#include //#inclu

2016-08-30 15:43:48 263

原创 莫比乌斯函数和反演定理的理解

这几天复习了莫比乌斯函数的运用,主要是用来解决倍数的问题的。现在就谈谈莫比乌斯函数的性质和反演定理的理解。 首先定义 u(x)u(x) 为莫比乌斯函数。他有以下性质: 1.∑d|mu(x)=[m==1]\sum\limits_{d|m} u(x) = [m == 1] 其中m == 1 指m == 1 的逻辑值,也就是如果m == 1 则表达式为1 , 否则表达式为0 .上面的公式是u(x)u(

2016-08-30 09:34:41 2393

原创 codeforces702E---倍增法求解,第一发

倍增法是著名的RMQ算法的思想基础。其中的倍增是为了得到二进制数字,。这样我们需要一个k的长度的数值,就是需要k的二进制的一些组合,同时,由于lgn的内存和lgn的搜索速度,都是可以接受的,同时2^N--->2^(N+1)可以通过维护转移来得到,也就是DP,这样就是一个完美无缺的解法,同时,如果可以适用于许多的问题。上代码:#include #include #include #in

2016-08-26 13:14:18 409

原创 CF刷题总结---CF706E链表

这题目应该要秒做出来的。首先看到二维,又没什么思路就直接降维考虑一维的情况,就是一段连续的和另一端连续的交换,最快的当然是链表模拟了。所以考虑到二维中也不应该用数组存储,而是链表表示。‘但是由于二维的话,不可能是简单的链表。所以考虑每一个矩形和旁边的关系。肯定就是四周的,但是只考虑单向,那就是2个方向。就是用一个十字交叉链表表示整个数组,这样的话,如果要交换,就是周围一圈的互相交换就可

2016-08-21 16:51:37 963

原创 多校联合训练hdu5845---Best Divison

一个典型的DP首先总结一下套路:对于那个所谓的简单问题,必须是2维的,因为需要一维来存取i,另一维来表示当前划分的长度,结果表示花费c。可以通过二分或者是什么其他的限制答案的方法来消除一维或者是+数据结构简化转移。然而这个是二分花费导致最后的一维减少。那么就是,i一维,结果保存一维,这样的话就可以简化一维。。。。。。。其实要划分区间,那么套路就是这样的。那也就是d[i] --- d[j

2016-08-17 19:17:37 450

原创 2016多校集训---hdu5852

题目是一个棋盘,给你k个棋子和k个目的地,每一个棋子都是在1行,每一个目的地都是在n行,要求找出让k个棋子移动到k个目的地的路径不交叉的方案数。。这个其实也是个套路题目,知道一个定理。就可以,但是我不知道定理的名字。但是考虑2个棋子的情况:a1 a2 ---> b1 b2其中使用a -> b表示 a到b的方案数 ; 那就是a1->b1 * a2 -> b2 - a1 -> b2

2016-08-17 11:04:21 475

原创 2016多校训练hdu5855---最大权闭合图

多校第9场,太难了。对于这种网络流居然是签到提。基础原型:有实验和很多的仪器,每一个实验依赖仪器集合但是每个仪器都有花费,但是实验可以获得正的利益,最后要求怎么采购,可以获得最大的利益。。其中有几点注意的,首先,必须是每一个仪器只要买了都可以在任何一个实验里面是用。也就是,如果选择采购了仪器1,那么,所有的实验只要依赖1仪器都相当于拥有了。2.每一个实验要想获得收益i,必须要所有需要的

2016-08-17 10:37:47 521

原创 多校联合训练2016---hdu5798Stabliztion

一个压缩状态 + 记忆搜索/DFS非顺序枚举 的题目。。TLE的同学记得一定要用G++提交。否者如果是C ++ ,标程都TLE。表示时间限制很紧,标程都是1800ms,我的是2800ms......首先很容易想到的思路是,,X的每一位如果是1.都会对10^5个数产生影响。。记录变化下来,然后枚举X,再循环x的每一位,如果是1,就加上这个变化。。但是也就自然的把10^5-1个差压缩成了d

2016-08-13 09:47:52 393

原创 贡献思路题目集合

贡献的题目就是交换循环数。。。或者是交换求和符号的两边的个数。就可以达到优化和结题的目的。。。因为可以发现相同的y的i的共性。。。一般可以和记忆化通同。。。一个是记录结果,。一个是改变枚举顺序。。。一个是用空间记录,一个是一次性全部计算。。。1.【多校】hdu5798   dp + 贡献优化。

2016-08-12 21:50:44 283

原创 模板:快速幂和快速等比数列和

快速幂和快速等比数列和其中没用使用乘法逆元。。但是乘法逆元的更加快速,如果moddd数不是一个素数并且不好求他的欧拉函数,就可以使用等比数列的二分性。。。但是速度比较慢、、const int moddd = 1e9+7 ;ll quick_pow(ll x , ll y){ if(y == 0) return 1 ; ll tmp = quick_pow(x , y/

2016-08-12 19:09:22 446

原创 2016多校集训---hdu5794

Lucas + dp注意一个点:如果是容斥肯定超时,但是容斥原理有一点,那就是无序性、、、比如2的倍数包含了3的倍数。3的倍数包含了2的倍数。所以用2^n来实现、、而如果C = A ^ B , 且a 属于 A 也可能 属于B 。 但是 a属于B 就一定不会 属于A , 那就可以使用DP , 来加速容斥。。。。n^2 复杂度 。。贼强/。。。比如此题:dp[i] 表示 第一个经过

2016-08-12 16:46:40 185

原创 模板:Lucal定理

Cn,m % p ;LL fact[MAX];void Getfact(LL p){ fact[0]=1; for(int i=1;i<p;i++){ fact[i]=(fact[i-1]*i)%p; }}LL qpow(LL a,LL n,LL p){ LL ans=1; while(n){ if(n&1) ans

2016-08-12 14:09:33 235

原创 2016多校总结---hdu5821Ball

新套路get ; 首先要判断a数组可以不可以到达b数组,如果是1-n那么就是排序,然后看ab相不相等。。。但是这个是部分。。这里有两点关键点:1.如果有三个1.,位置在b数组中是pa b如果可以到达,那么一定存在一种方法:是在a中依次递增的1分别到依次递增的b数组。例如:1 1 0 0 1 0 0 0 0 1 1 0 0 1那么一定是a中第一个1到达b中第一个1

2016-08-12 14:00:22 241

原创 2016多校总结---HDU5812distance

这个题目很巧妙。其实刚开始是没有任何想法的,但是仔细分析一下套路就会发现。其实是正常的套路。首相,这是个询问类型的题。给你定义了一个函数d( x , y ) 为从x 到 y要乘或除的素数的最小个数。但是不可以0(n^2)肯定会超时(普遍的套路) ; 但是这个题目要抓住一个特殊的点。因为这个是集合操作,包括了insert和delete, 可以在insert和delete的同时维护什么东西。这

2016-08-11 11:06:55 265

原创 MD5mesh静态骨骼模型的openGL渲染

弄了差不多4天了,终于搞出来了。太坑爹了,网上很多都没说清楚,最终要的是,一些坑点一定要注意,否则模型会像畸形了一样,再者,写代码时手千万不可以手残,否则会增加很多修改错误的时间,这个时间还不如想好了再写。所以写代码一定要清晰了再去写。开始说说吧。首先网上很多都说了,MD5后缀名是.md5mesh和.md5anim。这两个文件前面是静态的,后面是动态的。我也就不多说了对于D3D的学习,可以

2016-06-28 15:07:10 1311

原创 hdu3516 --- 四边形不等式优化

其实这一题还是没有完全证明,因为赵爽的了论文里面是w(i , j) 一定要是相同的,而对于这一题,其实转移方程和k的选择不同而w不同,但是运用四边形不等是因该也没错.四边形不等是的实质就是解的单调性...很多时候都可以这样做.使用解的单调性或者是凸性来优化DP转移.#include #include #include #include #include #include #incl

2016-05-31 10:11:53 327

原创 poj3378 树状数组 + 离散化 + 高精度

其实.,我没有AC,因为...高进度不会,所以没有搞.ok,这个是我直接一次后的代码.是为了以后再做这一题用的#include #include #include #include #include #include #include #include #include #include #include #define inf 0x3f3f3f3f#define mem0

2016-05-30 15:30:32 275

零秒思考:像麦肯锡精英一样思考-赤羽雄二.rar

完整版,19MB。rar压缩

2017-01-01

空空如也

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

TA关注的人

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