自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

天使也掉毛

我要的并不是

  • 博客(34)
  • 资源 (63)
  • 收藏
  • 关注

原创 POJ2594 最小路径覆盖

题意:      题意就是给你个有向无环图,问你最少放多少个机器人能把图全部遍历,机器人不能走回头路线。思路:     如果直接建图,跑一遍二分匹配输出n - 最大匹配数会跪,原因是这个题目和以往见到的题目不一样的,区别就在,之前很多题目给的都是全边,就是假如 a->b b->c ,那么他一定会给你一条 a->c,因为a->c也是有指向关系的,而这个题目就没有给a->c,这

2014-05-29 10:31:24 590

原创 POJ2226 不错的最小顶点覆盖

题意:       给你一个n * m 的矩阵,上面有" * " 和 " . " ,让你用少的木板吧所有" * "覆盖,木板宽度是1,长度随意,木板可以重叠,但是不能覆盖到" . "上。思路:      这个题目建图方式不错,回想下最基本的最小定点覆盖,也是在n * m 的矩阵上,覆盖某些点,但是可以覆盖" . "那样直接匹配行列就行了,这个如果是***

2014-05-29 09:17:44 641

原创 POJ3041 最小顶点覆盖

题意:      给你一个n * n 的矩阵,和X所在的坐标,问你最少放多少个**可以把图里的所有X都覆盖,每个**可以覆盖一行,或者一列。思路:      最小顶点覆盖,最小顶点覆盖=二分匹配,每一行最多放一个,每一列最多放一个,对于每一个点,他只要被一行或者一列照应就行了。所以直接把X所在的点的行和列连接在一起,(二分后对于当前点相当于只选择一个),这样最后每个点都会被

2014-05-29 09:03:39 664

原创 POJ1466 最大点权独立集

题意:      给你n个人,再给你每个人都喜欢哪些人,让你找到一个最大的集合数,要求这个集合里面任意两个人都不喜欢彼此。思路:      直接就是在问最大点权独立集元素个数,没啥解释的一遍二分图就行了,输出 n - sum / 2,说下为什么有的最大点权独立集合除以2有的不除吧,这个没什么固定的,比如说这个题给的边一定是双向的,也就是说 1 喜欢 2, 到2的时候也会喜欢1

2014-05-29 09:02:08 628

原创 POJ1422 最小路径覆盖

题意:     一个战场,往战场上投放伞兵,每个伞兵不能后退,只能往前走,问你最少多少个伞兵可以吧所有的点都占领。思路:     这个题是最小路径覆盖,最小路径覆盖 = n - 最大匹配数,首先说下什么是最小路径覆盖,给你一个有向无环图,问你最少用多少条无返回路径可以覆盖所有点,再说下为什么是n - 最大匹配数,想下,假如没有边,那么就是每个点放一个伞兵,假如只有一条边,那

2014-05-29 09:00:41 617

原创 POJ1125 Floyd

题意:      给你n个点,问你在哪里选择开会地点,使得到所有点的最长路径最短.思路:     n很小,直接Floyd,然后暴力枚举就行了。

2014-05-29 08:59:04 586

原创 POJ2570 二进制,位运算,Floyd

题意:      给你一个有向图,两点之间有多种连接方式,然后每次询问都问你点A,B之间有哪些方式可以到达,每个小字母是一个方式.思路:      很巧妙的位运算和Floyd应用,借助Floyd的更新过程,去更新任意两组边组合起来的长边,如 map[i][j] 是由 map[i][k] 和 map[k]][j]接起来的,更新方式很容易理解,是map[i][j] = map[

2014-05-29 08:56:28 675

原创 POJ2446 二分匹配

题意:      给你一个n*m的格子,问你能不能用1*2的格子把他铺满,有的位置是不能被铺的。思路:     水题,直接把个相邻的并且都是可以铺的点连一条边然后匹配一遍就行了,提醒一个地方,就是输入不能铺的坐标的时候是 先输入列再输入行。#include#include#define N_node 1500#define N_edge 6000type

2014-05-27 16:55:05 461

原创 POJ2536 二分图匹配

题意:     有n只老鼠,m个洞,每个洞最多可以藏一只老鼠,每个老鼠的移动速度都是v,给你他们的当前坐标,和洞的坐标,突然老鹰来了,他们必须在s秒内跑到一个洞藏起来,问你最少有多少只老鼠被抓走了。思路:      二分图匹配裸题,关键就是那句一个洞最多容一只老鼠,对于每个老鼠连接能在s秒内到达的所有洞,然后一边最大匹配,得到的就是最大的藏起来的老鼠sum,输出n - sum就

2014-05-27 16:27:50 444

原创 POJ3692 最大点权独立集元素个数

题意:     n个男孩和m个女孩,给你他们谁和谁彼此了解,问你要找到一个集合,使得这个集合中的男孩和女孩相互了解,并且人数最多。思路:     简单题目,其实就是在求最大点权独立集元素个数,先说下点券独立集的概念,就是给你一些关系,让你找到一个最大的集合,使得集合中的任意两个人之间都不会有关系,用的是匈牙利算法,对于这个题目我们可以吧不了解的连接到一起,这样得到的就是集合

2014-05-27 16:03:31 485

原创 POJ3757 01分数规划

题意:     有一个任务,给你提供n太服务器,让你在这n太服务器中选出k台完成这个任务,要求是每台服务器的工作时间相同,总的花费最小。思路:     题目中给出对于每台服务器有这个式子:Total time = Processing time + Transmission time = fi / pi + fi / bi转化后是: time = fi *

2014-05-27 15:26:07 979

原创 POJ 3621 最优比率生成环

题意:     让你求出一个最优比率生成环。思路:     又是一个01分化基础题目,直接在jude的时候找出一个sigma(d[i] * x[i])大于等于0的环就行了,我是用SPFA跑最长路判断的环,这里注意一点就是刚开始的时候吧每个点都入队,还有提醒一个盲区,就是有的人认为SPFA处理不了等于0的环,其实我们不用担心这个问题,因为最外层我们用的是二分,二分永远是找接近值,就算有等

2014-05-23 08:39:27 581

原创 POJ 2976 01分数规划基础题目

题意:      给你一组"数",一共n个,每个数有两个权值,价钱a[i],代价b[i],让你选择n - k使得 sigma(a[i]) / sigma(b[i]) * 100 最大;思路:      毫无疑问这个是01分数规划的最进本形式,唯一的限制就是取个数,那么我们直接sort以下,取出来就行了。没啥解释的,这个是自己的第一个01分数规划,一会要自己总结下01分数规划

2014-05-23 08:37:48 441

原创 POJ 2728 最优比率生成树

题意:     让你求一颗最小比率生成树。思路:     我总结过了,在这里:     提示几个地方,这个题目的最小树记得用普利姆,别用克鲁斯卡尔,克鲁斯卡尔会超时,在sort那个地方超时。别的没啥。

2014-05-23 08:36:21 505

原创 总结01分数规划

总结下01分数规划:01分数规划通常分为三类(1)基础01分数规划(2)最优比率生成树(3)最优比率生成环首先01分数规划是处理这样一类问题的,给你n个二元组,这个两个元素设为a[i] ,b[i], a[i]是得到这个物品所能得到的价值,b[i]是得到这个物品所付出的价值,让你求这样一个极值    R  =  sigma(a[i] * x[i]) / sig

2014-05-23 08:31:48 1890

原创 POJ 2762 单连通图

题意:     给你一个有向图,问你这个图是不是单连通图,单连通就是任意两点之间至少存在一条可达路径。思路:     先强连通所点,重新建图,此时的图不存在环,然后我们在看看是否存在一条路径可以吧所有点都覆盖了就行了,直接一遍拓扑排序,只要拓扑排序唯一就行了,拓扑排序唯一的条件是 每次最多只能有一个进队。

2014-05-22 19:41:21 693

原创 hdu2594 简单KMP

题意:     给你两个串,问你s1的前缀和s2的后缀最长公共部分是多少。思路:     根据KMP的匹配形式,我们求出s1的next,然后用s1去匹配s2,输出当匹配到s2的最后一个的时候的匹配位置就行了。

2014-05-22 19:36:56 659

原创 KMP中next数组的理解

next数组是KMP的核心,但对于next数组我们总是有时候感觉明白了,但有时候又感觉没明白,现在我就说下我自己对KMP中next数组的理解,首先next[i]上的数字的意义,next[i]表示的是当匹配到匹配串的第i个字母适配的时候,改跳到的位置,为什么要跳,是因为不想回到0重新浪费时间去比较,在深一点理解,我感觉next[i],里存的是 找两个相同的尽量长的字符串,一个是以从匹配串的第一个字母

2014-05-18 13:21:23 1539

原创 hdu 1867 求两个串的"和"最小 ,KMP

题意:      给你两个字符串,让你求str1+str2,就是把1的后面和2的前面重叠的地方只显示一遍就行了 abc + bcd = abcd,要求和的长度最小,和最小的前提下求字典序最小,还有就是两个串可以交换位置的,cdab + abcd = abcdab 而不是 cdabcd,交换位置后合并是最短并且字典序最小的。 思路:      首先得到两个next数组,然后用st

2014-05-18 13:16:55 446

原创 hdu3336 KMP + DP 前缀数组出现的次数

题意:      给你一个串,问你他的所有前缀子串在本串中的出现次数,注释:abc的前缀子串是a ab abc;思路:     还是利用了next数组,先对子串求出next数组,再开一个数组dp,初始化全是1,因为每个以当前i结尾的都至少是1,然后从后往前更新,把以i结尾的加到以next[i]结尾的上,运用的next数组的特点相当于 123123123 最后一个3加到倒

2014-05-17 23:54:46 538

原创 hdu1711 KMP模板

题意:     给你两个串,问你第二个串是从第一个串的什么位置开始完全匹配的。。思路:      裸的KMP,也是我的第一个KMP,说下对KMP的理解吧,首先对于非优化的方法求匹配,时间复杂度应该是O(n*m) ,而KMP则是O(n + m)(感觉会比这个长点,因为子串是不回溯,但是匹配串回溯了),但不管怎样,比以往的匹配快多了,KMP的关键就是处理匹配串,也就是给那个next

2014-05-17 23:52:06 443

原创 hdu1686 最大匹配次数 KMP

题意:     给你两个串,问你串a在串b中出现了多少次。思路:      直接匹配,KMP时匹配到匹配串的最后一个的时候不用跳出,直接匹配就行了,最后一个'/0'不会和目标串匹配,所以经过next[l2]就直接自动找到该去的位置了,怎么说呢,今天刚学的KMP,给我的感觉就是"记忆化搜索"。

2014-05-17 23:49:50 717

原创 hdu1358 最小循环节,最大循环次数 KMP

题意:      给你一个字符串,让你找到一些字符串,这个字符串是从第一个字母开始的,并且他可以分成1个一上循环子结构够成的,比如 abcabcabc  那么当前的这个串就是三个abc构成的,他的AK值就是3,对于输出的答案中就会包含当前这个状态,表示为9 3。思路:      就像最小路径覆盖是二分匹配的一个景点应用一样,这种循环节的也是KMP的一个应用,结论是 当 i

2014-05-17 23:48:12 755

原创 hdu3746 KMP的next数组应用,求项链首尾项链循环

题意:      给你一个项链,问你最少加多少个珠子能满足整个项链是一个循环的项链(首尾相连)思路:     KMP的简单应用只要了解next数组的意义就好说了,下面总结下 next在循环方面的常用应用(1)i - next[i] 最小循环节(第一个字母开始)(2)next[i] 最大循环节中的第几位数(此时循环节可交叉)(3)next[i] != 0 && i

2014-05-17 23:42:36 403

原创 hdu4067 费用流(混合欧拉的宽展和延伸)

题意:       给以一个图,每个有向边都有两个权值,a,b其中a是保留这条边的花费,b是删除这条边的花费,让你删去一些边使图满足一下要求:(1)只有一个起点和一个终点(2)所有的边都是又向的(题目给的就是有向的)(3)对于起点,出度 = 入度 + 1(4)对于终点,入度 = 出度 + 1(5)其他的点 出度 = 入度 求满足要求时的花费最小。 思路:

2014-05-16 20:03:38 445

原创 hdu1501 记忆化搜索

题意:      给你三个字符串,问你前两个能不能拼成第三个串。思路:      直接记忆化神搜就行,思路水,看下代码就知道了。这个题目我感觉最大公共子序列dp的作法是错的,虽然有人ac了,随便一组数据比如 abc abc abccba。

2014-05-12 14:50:28 499

原创 hdu1316 大数

题意:     给你一个区间,问这个区间有多少个斐波那契数.思路:     水的大数,可以直接模拟,要是懒可以用JAVA,我模拟的,打表打到1000个就足够用了...

2014-05-11 20:54:49 404

原创 hdu4411 经典费用里建图

题意:      给以一个无向图,0 - n,警察在0,他们有k个警队,要派一些警队去1--n个城市抓小偷,问所有吧所有小偷全抓到然后在返回0的最小路径和是多少,当地i个城市被攻击的时候他会通知i-1城市,也就是说要么同时消灭他俩,要么消灭i-1在消灭i;思路:      经典的费用流建图 ,先来一遍floyd处理下图 ,首先虚拟出来源点s ,终点t ,超级源点ss,建

2014-05-08 21:27:50 540

原创 hdu4768 非常规的二分

题意:      n个社团给同学发传单,同学一共有1--2^31这么多,每个社团有三个数A ,B ,C ,只有满足 A ,A + C ,A + C + C ...A + KC 思路:     "题目保证给的测试数据要么没有奇数的,要么只有一个是奇数个传单." ,这句非常关键,我们二分枚举1--2^31,对于mid,算出0--mid一共发出去tmp张传单,如果tmp是偶数那么

2014-05-06 21:03:31 599

原创 hdu3313 最大流找关键点,或者最短路找关键点.

题意:     给你一个有向图,然后给你起点和终点,问你从起点到终点有多少个关键点,如果当前的这个点删除了就无法从起点到终点,那么这个点就是一个关键点..思路:     有两种做法,我用的是最大流的,另一种是先跑最短路然后搜索,不会所以不介绍另一种,最大流的很容易理解,首先我们拆点建图,每个点拆成两个点,限流是1,然后起点和终点的限流是2,点于点之间是INF,跑一遍最大流,如果

2014-05-05 17:05:51 1033

原创 hdu2899 三分

题意:     给你个函数,F(x) = 6 * x^7+8*x^6+7*x^3+5*x^2-y*x ,给你一个y,x的范围是0--100问你最小的 F(x)思路:      本人推数学公式啥的没啥天赋,一看这个题目肯定是三分(自己感觉),然后直接敲完就ac了,估计正解什么的还要转换这个公式...然后...在然后..最后求一下2阶导函数,根据二阶但函数的正负判断什么凹凸性什么的

2014-05-03 19:49:55 502

原创 hdu1007 最近点对

题意:      给你n个点,让你求最近的两个点的距离是多少.思路:      这个题目我没思路,我在网上看的是什么分治 + 鸽巢原理,分治我知道,鸽巢原理我也知道,但是这个题目就是没有证明出来他和鸽巢原理有jm关系,总之就是先以x或者y优先sort一下,然后每次枚举每个相邻点的附近5个就行了(加自己一共六个),而且这个题目的前提好像还是什么数据必须是随机产生的吧,

2014-05-03 18:55:29 429

原创 hdu4662 简单搜索打表

题意:     给你一个初始串"MI",这个串有三种操作,(1)M后卖弄可以直接复制 ,MI -> MII(2)三个III可以变成一个U,MUIII -> MUU(3)连续的两个U可以直接删除,MIUUU -> MIU每次输入一个字符串,问你这个字符串是不是MI变过来的. 思路:     刚开始想都没想直接开个容器mark,然后搜索打表,控制的长度是1000000,

2014-05-03 18:48:18 532

原创 hdu3756 三分求最小圆锥

题意:      让你找到一个最小的圆柱去覆盖所有的竖直的线段..思路:      三分,直接去三分他的半径,因为想下,如果某个半径是最优值,那么从R(MAX->now->MIN)是的 V肯定是先增大然后减小再增大,也就是满足凹凸性,所以可以三分,三分的时候根据当前的半径我们可以枚举每一个点,通过相似三角形去找到最大的H作为当前的H,然后根据V三分搜索就行了,对于low的初始值

2014-05-03 18:34:08 586

玩具塔防游戏FZ

功能: 给学妹写的一个单机游戏FZ。 原理: 用CE找到游戏基址,然后把这个找的过程数据记下来,模拟一遍就行了,就是平时的单机游戏外挂开发思路。

2016-12-18

输入法模拟程序(字典树词频统计)

功能: 通过字典树等算法模拟了一个输入法频率提示工具。 原理: 没记错的话是用的字典树频率的统计方式做的。

2016-12-18

赫夫曼字节压缩工具

功能: 文档压缩工具。 原理: 赫夫曼压缩。

2016-12-18

玩具塔防游戏.辅助 程序

功能: 给学妹写的一个单机游戏辅助。 原理: 用CE找到游戏基址,然后把这个找的过程数据记下来,模拟一遍就行了,就是平时的单机游戏外挂开发思路。

2016-12-18

文件藏于图片中的三个思路及其源码

文件藏于图片中的三个思路及其源码: 1.追加在图片文件后面 2、3.直接结合到PNG和ico文件的相关节里面,使其成为图片的一部分。

2016-12-18

内存清理工具(加速球)

功能: 实现常见清理工具的一键加速功能。 原理: 将内存数据直接压倒虚拟内存里,释放一部分不活跃数据,但是不建议高频率调用。高频调用会降低操作系统运行效率。

2016-12-09

wifi共享工具

功能: 如功能描述。 原理: 通过cmd相关模拟实现wifi共享。

2016-12-09

局域网文件传输工具

功能: 在内网内实现两台机器文件传输。支持两台电脑之间直接网线连接,里面自带了网络配置器。 原理: 基本网络编程,以及一些局域网配置等。

2016-12-09

屏幕像素点获取并设置鼠标位置为制定像素(源码)

屏幕像素点获取并设置鼠标位置为制定像素(源码C#+C++) 工具功能: 快速查找制定像素值的坐标并将鼠标移动过去,功能的话根据实际场景不同,常用于游戏辅助等。 开发语言/工具: 交互界面部分(C#);功能部分(C++ dll 为了提速);vs2012 注意问题: 默认是用的.net f 3.5 应该是默认支持win7,如果发现不支持当前机器,请尝试编译源码并且修改.net f的版本, 默认是找到第一个满足需求的像素点(如果有多个点满足),同时如果是不能满足具体要求(通常是锁定范围,请阅读代码并在相关位置改善)。 如果觉得速度不能满足要求,可以尝试优化本地缓存部分(目前已经做过优化,可以满足日常需求)。

2016-12-07

文件查找工具

功能: 快速的在电脑上找到自己要找的文件,忘记了是否支持同配了、大一或者大二的时候写的吧,年代久远了。 原理: 多线程+DFS+BFS。

2016-11-27

五子棋对战

12.五子棋 功能: 在线版五子棋程序 原理: 基本的C/S编程,里面的棋子都是控件,就是直接无脑罗代码罗出来的,可能比较low。

2016-11-27

播放器-超级玛丽

功能: 一个简单可爱的播放器小程序。 原理: C#里的WinForm编程里直接可以添加windows的播放组件实现播放功能。

2016-11-27

远程控制服务端/客户端

远程控制服务端/客户端 C#全套源码

2016-11-25

获取win7登录密码的工具

获取win7登录密码的工具

2016-11-25

内存加载exe的两种方式(支持win7)

内存加载exe的两种方式(支持win7)

2016-11-24

网络爬虫工具

功能: 网络爬取相关信息。 原理: 基本的网络爬虫,没有采用多客户端等优化措施。

2016-11-20

程序速度齿轮

功能: 改变程序的运行速度。比如单机游戏等的游戏速度等。 原理: 先注入dll到相关进程里,然后直接Hook住它几个和时间相关的API,然后自己计算返回相关结果,实现程序速度调整。

2016-11-20

DLL注入工具

功能: 远程代码注入实现dll注入,支持x85 x64。 原理: 利用远程代码注入,把dll注入到相关进程里。

2016-11-20

服务提权工具

功能: system权限启动一个程序。 原理: 直接注册一个exe服务程序,然后启动一个界面程序,通过管道通讯给服务程序exe传递参数,让服务程序以system权限启动相关进程。

2016-11-20

输入法注入

输入法注入原理及其工具代码

2016-11-19

dll内存加载

dll内存加载

2016-11-18

通过修改EIP寄存器实现强行跳转并且注入DLL到目标进程里

通过修改EIP寄存器实现强行跳转并且注入DLL到目标进程里

2016-10-21

DLL服务(svchost服务)

svchost服务,DLL服务

2016-10-07

RVA-FOA转换工具

一个简单的RVA-FOA转换工具。

2016-09-29

lsp注入(原理及其实现代码)

lsp注入(原理及其实现代码)

2016-09-17

system提权工具

system提权工具,可以用system权限启动一个进程。里面同时包含了所有的实现代码以及原理文档介绍。

2016-09-16

DLL劫持-Hijack-原理及其实现细节

DLL劫持-Hijack-原理及其实现细节

2016-08-21

windows-DLL注入

windows-DLL注入整理

2016-08-14

windows-CODE注入(远程线程注入)

windows-CODE注入(远程线程注入) 整理代码

2016-08-14

汇编环境搭建(vs2010(2012)+masm32)

汇编环境搭建(vs2010(2012)+masm32)

2016-08-11

设计模式-代理模式(讲解及其实现代码)

设计模式-代理模式(讲解及其实现代码)

2016-08-07

设计模式-访问者模式(讲解及其实现代码)

设计模式-访问者模式(讲解及其实现代码)

2016-07-29

设计模式-解释器模式(讲解及其实现代码)

设计模式-解释器模式(讲解及其实现代码)

2016-07-29

设计模式-享元模式(讲解及其实现代码)

设计模式-享元模式(讲解及其实现代码)

2016-07-28

设计模式-中介者模式(讲解及其实现代码)

设计模式-中介者模式(讲解及其实现代码)

2016-07-27

设计模式-职责链模式(讲解及其实现代码)

设计模式-职责链模式(讲解及其实现代码)

2016-07-25

重新封装了下node-mongo服务.zip

# 重新封装了一下NODE-MONGO 使其成为一个独立的服务.可以直接通过get/post来操作 # consts.js 配置用的数据,用于全局参数配置 # log.js 自己写的一个简单的存储本地log的功能,数据库异常或者逻辑上产生异常数据的时候输出查错 # servicemongo.js 主服务程序,可以直接node servicemongo.js 启动,挂起端口服务 # routemongo.js 请求路由相关 # mongo.js 封装了一些基本的node对mongo操作 # 使用方法,直接node servicemongo.js 就行,也可以在另一个项目里调用servicemongo的start # 注意 如果node包不能用,看下错误日志,缺什么就直接npm i XXX 装上就好

2019-11-05

DIYPE解析器(做事无痕)

DIYPE解析器(做事无痕)

2017-02-05

TLS实现代码段加密

TLS实现代码段加密,运行的时候直接在内存里把代码段解密出来再跑。

2017-01-01

利用数字签名bug藏数据

利用数字签名bug藏数据工具,把数据藏在一个有数字签名的PE里,然后该PE文件数字签名依然显示正常。

2016-12-17

空空如也

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

TA关注的人

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