自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

微不足道

代码艺术家,代码设计师,游戏开发

  • 博客(125)
  • 资源 (1)
  • 收藏
  • 关注

原创 Unity开发-深入理解RectTransform

工作以后自己的时间被狠狠的压缩,回家以后有时候也不太想思考技术性问题,思考了也不一定写总结,所以呢,博客更新起来比较慢,不过最近钻研了很多问题,准备好好总结一下,陆续会把相关的内容发出来分享。。。言归正传,这篇主要说说RectTransform这个在处理UI位置,形变绕不过的组件。 新手在制作UI界面的时候经常会有这样疑惑? 为什么ui设置了相对位置以后ins面板上的...

2018-06-03 18:48:56 3721

原创 Unity开发-玩家行走-CharacterControl,Rigibody,Transform控制行走实践

行走是rpg游戏中十分基础的功能,但是小白在处理的时候却又很容易犯错误,这一节,我将梳理一些行走代码的细节,希望遇到问题的小伙伴可以有所收获。在unity中,控制人物移动的大体上来说,有如下三种方法:CharacterController组件移动物体通过Transform组件移动物体通过Rigibody组件移动物体CharacterController组件这个组件需...

2018-04-01 17:10:53 2541 2

原创 C#调用可执行文件(.bat,.exe...)

在服务器开发的过程中,我们经常需要开多个黑框测试功能,在文件夹中找这些可执行文件十分的浪费时间带来的个人体验也异常的差劲,我们可以通过C#制作一些小工具来改善这种情况,比如把需要开启的多个黑框的可执行文件丢在按钮里,虽然功能很简陋,但是带来的个人体验却感人肺腑,C#语法就不介绍了,我这里主要介绍一下如何调用可执行文件 // 需要的头文件 using System.Diagnos

2017-12-24 21:15:43 10836 2

原创 游戏开发志

一般写文章会很浪费时间,嗯,为了不浪费时间,预计半个小时写完,长话短说,这篇文章就是立一个flag,在日后自己松懈的时候,可以想起当年的鸿鹄之志,继续奋发向上。 我时常在想,我的这一生到底该如何度过,但是始终没有想清楚,每每做决定,都是各种复杂条件的综合考量,所以对于未来不是想得非常的透彻,但是至少有一个准则,放弃了学术,就要在工程上做出点事情。 大学一直参加竞赛,混了几个牌草草

2017-12-09 22:44:48 282

原创 redis常用语法总结-入门篇

目录1. redis基本数据类型 1.1 字符串1.2 列表1.3 集合1.4 散列1.5 有序集合—————————————redis基本数据类型字符串get key 获取对应键的值set key value 设置对应键的值del key 删除对对应的键已经键对应的值列表rpush name key 把相应的键从尾部插入到列表中 lrang

2017-12-06 17:46:23 1244

原创 Socket通信-accept+多线程

偶然的机会,重新写了一下windows下socket通信的比较基础的代码,太久没有接触socket以及多线程,查了不少博客,但是发现大部分内容比较陈旧,所以决定写一篇博客,顺便自己总结一下。内容简介网络通信基本函数介绍C++11多线程简介socket通信tcp版本socket通信udp版本网络通信基本函数介绍tcp连接模式下客户端流程1.创建socket(套接字) socket(

2017-12-03 21:10:39 14283 2

原创 游戏开发-GM系统的设计

游戏管理员(gm)作为游戏中拥有更高权限的账号,在游戏开发的过程中,我们需要很早的将gm系统做出来,作为测试游戏逻辑具有不可替代的作用。内容目录服务端与客户端通讯基本流程gm命令格式设计gm系统的实现服务端与客户端通讯基本流程 服务端与客户端通信,如果基本的网络框架搭建完成,那么我们只需要写好命令就可以了 服务器完成一条命令的添加需要3个过程。 (1)命令格式的定义

2017-11-19 14:20:15 3275

原创 常用linux命令-netstat命令

netstat命令命令功能:netstat用于显示与IP,TCP,UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。命令实例:1.netstat 无参数使用2.列出所有端口netstat -a3.显示当前UDP连接的状况netstat -nu4.显示UDP端口号的使用情况netstat -apu5.显示网卡列表netstat -i

2016-08-06 22:35:30 714

原创 常用的linux命令-ss命令

ss命令命令格式:ss [参数] / ss [参数] [过滤]命令功能: ss命令用来获取socket信息,输出结果类似于netstat输出的内容,但是能显示更多的tcp连接状态信息,比起netstat更加的高效命令实例:1.显示tcp连接ss -t -a2.显示 sockets 摘要ss -s3.列出所有打开的网络连接端口ss -l4.查看进程使用的soc

2016-08-06 22:22:54 1384

原创 常用的linux命令-rcp命令

rcp命令命令格式:rcp [参数] [源文件] [目标文件]命令功能:rcp命令用在远端复制文件或者目录,如同时指定俩个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到该目录中命令实例:1.将当前目录下的test1 复制到名为 webserver1的远程系统中rcp test1 webserver1:/home/root/test3

2016-08-06 21:52:31 1633

原创 常用的linux命令-scp命令

scp命令命令格式:scp [参数] [源路径] [目的路径]命令功能scp命令是linux系统下基于ssh登录进行安全的远程文件拷贝命令命令实例:1.复制文件scp file.txt hadoop@hadoop:~/newfile2.复制目录scp -r volume hadoop@hadoop:~/newvolume

2016-08-06 21:41:22 384

原创 常用的linux命令-wget

wget命令简单格式:wget  [参数]  [URL地址]命令功能:1.支持断点下载功能2.同时支持FTP和HTTP下载方式3.支持代理服务器4.设置方便简单5.程序小,完全免费命令实例:1.使用wget下载单个文件wget http://www.baidu.com/xx.aspx?user=my2.使用wget -O下载并以不同的文件名保存wge

2016-08-06 21:34:55 298

原创 理解Linux文件权限

useradd -m username 创建home文件夹的建立新用户userdel -r username 删除用户groupadd groupname 新建组chown 属主.属组 filename 更改属主和属组chown .属组 filename 更改默认的属组chgrp 属组 filename 更改默认属组的另一种方法chmod 777 filename将文件更改

2016-08-01 17:45:22 262

原创 grep 命令文本搜索总结

grep命令的搜索文本能力十分的强大,刚接触也只是瞥见了冰山一角。命令格式grep 参数 颜色 搜索内容 文件名参数有如下几种:-a:将二进制文本按照text内容搜索 -i:忽略大小写-c:统计匹配到的文本行数量-v:反向输出没有匹配到的行-n:显示行号颜色:--color=auto 设定搜索到的内容的颜色应用正则表达式时主要用到的参数:\:忽略

2016-08-01 16:35:48 408

原创 更多的bash shell 命令

讲道理,这部分的内容很坑的,因为这些命令对于一个新手来说,基本就不怎么用啊1.监测程序   ps 只显示当前控制台下属于当前用户的进程。ps -A 显示所有进程ps命令只能显示某个特定时间点的信息,为了弥补这个缺陷,有了top命令top 实时的输出进程信息kill -9 进程id 杀死进程2.监测磁盘空间mount 显示挂载的设备mount -t path1 p

2016-08-01 13:38:32 259

原创 基本的bash shell命令

最近开始深入的学习linux与shell编程,完成了入门阶段的学习,故总结一下这个过程中学习的内容1.浏览文件系统浏览目录,我们首先得认识俩个问题,绝对路径与相对路径。cd 目的文件路径 可以方便的进入到该文件夹目录下绝对路径:从虚拟根目录开始,用 / 分割。这样就实现了进入了根目录下的home文件夹相对路径cd ..表示到达父亲目录cd .

2016-08-01 12:11:34 500

原创 poj 1651 Multiplication Puzzle

题目大意:给你一串数字,不可以取第一个数字和最后一个数字,每次取一个数字的代价是这个数字与它左右俩边俩个数的乘积,问取完所有数的最小的代价是什么?解题思路:我们用dp[i][j]表示区间[i,j]最小代价的取值;那么就会有转移方程dp[i][j]=min(dp[i][j],dp[i][k]+dp[k][j]+num[i]*num[k]*num[j]);i#include#incl

2015-04-29 22:07:06 371

原创 poj 2955 Brackets

题目大意:给你一串字符序列,问序列中可以匹配的括号最多有多少个;解题思路:首先需要注意,最多可以匹配的括号个数,如果可以匹配一对括号,那么个数为2,‘(’和‘)’或者‘【’和‘】’;我们用dp[i][j]表示【i,j】这个区间内可以匹配的最大的括号数;则有转移方程dp[i][j]=max(dp[i][j],dp[i][k]+dp[k][j]);在进行这个判断的时候需要判

2015-04-27 11:49:16 370

原创 light oj Halloween Costumes

题目大意:你要去参加一系列舞会,每个舞会都有某一种款式的衣服,一件衣服你可以套在另外一件衣服上面穿,但是脱掉以后就不能再用这件衣服了;解题思路:很经典的一道区间dp题目。我们用dp[i][j]表示i------j这段时间内最少的穿衣件数;因此我们需要不断的枚举可以分割区间的点来更新答案,而这个过程我们需要后面某一段时间的最优值,因此我们进行递推的时候需要自下而上的更新答案;

2015-04-27 10:36:49 434

原创 hdu 4044 GeoDefense

题目大意:题干很长很吓人;这是一个塔防游戏。你的基地是一颗树的叶子结点,1为树根,从树根会跑出很多怪物,每个怪物都有一个血量,你可以在所有结点安装炮台,但是炮台对怪物只能打以炮,每个结点只能安装一个炮台,炮台有很多种类供你选择,每个炮台都有一定的花费和价值;问保证基地不被破坏的情况下,可以打掉的怪物的最大血量为多少;解题思路:一道比较复杂树形背包;首先我们得预处理数据,对于

2015-04-21 12:29:34 475

原创 poj 3345 Bribing FIPA

题目大意:所有的城市构成一片森林,你想竞选一个职位,就要获得m个城市的支持,你必须去贿赂这m个城市,但是如果以一个城市为根,它有子孙城市,那么你直接贿赂根城市,就不用贿赂它的子孙城市了,问要得到m个支持,至少需要贿赂多少钱;解题思路:因为是一片森林,我们先将森林转化为树,把没有父亲结点的结点都与0结点相连接;树形背包,将不同的子孙结点当做不同组别物品,m当做容量,代码中把size【

2015-04-21 12:12:53 465

原创 poj 2486

题目大意:一个人喜欢吃苹果,一个树上的结点都放这苹果,但是这个人最多只能走m步,问走m步可以吃的苹果最多是多少?解题思路:这道题目和普通的树形背包有点区别,访问每个结点是按步数算的,这样,访问了子孙结点还可能返回来,也有可能不回来,我们可以多增加一维来处理这样的情况;dp[i][j][1]表示从i出发最后停留在i的直接相连的子孙或者i;dp[i][j][0]表示从i出发既没有停

2015-04-20 18:08:39 445

原创 hdu 4003 Find Metal Mineral

题目大意:一些节点之间有道路相连,所有的节点和道路形成了一棵树。一共有 n 个节点,这些节点被编号为 1~n 。人类将 k 个机器人送上了火星,目的是采集这些金属。这些机器人都被送到了一个指定的着落点, S 号节点。每个机器人在着落之后,必须沿着道路行走。当机器人到达一个节点时,它会采集这个节点蕴藏的所有金属矿。当机器人完成自己的任务之后,可以从任意一个节点返回地球。当然,回到地球的机器人

2015-04-20 17:43:06 432

原创 hdu 1561 The more, The Better

题目大意:英文题目,汉语题面,,,不解释了;解题思路:dp[i][j]表示从i结点出发,攻击j个城市,可以获得的最大的价值;初始化,dp[i][1]=val[i];只有一个结点的时候,肯定要选择当前的结点啦,价值也是当前结点的价值;dp[i][j+k]=max(dp[i][j+k],dp[i][j]+dp[v][k]);如何体现攻击子孙结点的时候要先攻击父亲结点呢?我们进行

2015-04-20 17:19:56 311

原创 POJ 1947 Rebuilding Roads

题目大意:给你一棵树,问要切割出节点数为m的子树,至少需要多少次切割;解题思路:我们考虑i结点为根结点,那么切割出j个结点需要的最少的次数;dp[i][j]表示以i为根结点,切割出j个结点的子树(该子树包含i结点),那么对与每一个根结点,dp[i][1]我们不考虑它的父亲结点,则需要size【i】次,这里size是它的直接相连的子孙个数,注意直接相连;对于状态dp[i][j],

2015-04-20 16:23:20 354

原创 hdu 1011 Starship Troopers

题目大意:有一些山洞连接在一起,每一个山洞有一些bug和价值,你有m个战士,每个战士可以消灭20个bug,从1山洞出发,要消灭后面的必须消灭前面的,问,最多可以获得多少价值;解题思路:树形背包dp,一个结点的子孙结点就是分组的背包,可以选可以不选;dp[i][j]表示从i结点出发,放出j个士兵可以获得的最大的价值;转移方程为dp[i][j+k]=max(dp[i][j+k],d

2015-04-18 15:48:04 361

原创 poj 1155 TELE

题目大意:电视台要给用户发送信号,要通过转送站转送,转送的路径都要花费一定的金额,然后用户会交一定的费用接收信号,问在不陪钱的情况下最多可以让多少用户接收信号;解题思路:我们可以构建一棵树,用户则为树叶,电视台为根,中转站为非叶结点;dp[i][j]表示以i为根,发送给j个用户可以获得的最大的价值;初始化:dp[i][0]=0,dp[n-m+1''''''''''''''n][

2015-04-18 14:20:54 349

原创 poj 3162 WalkingRace 树形dp+线段树

题目大意:从任意一个结点出发,都要走到距离当前距离的最远的点,然后把这些距离存储下来,求差值在一定范围内最长的连续序列长度是多长;解题思路:求树上任意一点到树上某一点的最远距离,我们可以证明这一点一定是树的直径中的某一个端点;我们可以通过3次dfs找出树上每一点的最远距离;然后通过控制l,r来寻找区间最长的连续序列,这期间通过线段树查找区间的最大最小值;#include#in

2015-04-18 13:52:04 395

原创 poj 1741 Tree 树的分治

题目大意:求树上俩结点之间距离小于K的结点对个数;解题思路:俩个点a,b的公共祖先为c,那么这俩个点的距离就可以用dis(a,c)+dis(b,c)表示,我们可以不断的处理这样c,然后计算距离,处理点对,为了使平均性能最好,我们需要找的c为每一棵子树的重心;需要注意的算点对的时候这种方法成立的条件是俩个点不在同一颗子树上,因此我们算完以后还需要减去在一个子树的点对;然后解释一下代码

2015-04-17 10:42:34 400

原创 poj 3107 Godfather

题目大意:求一颗树的所有重心;解题思路:树的重心的求法我在poj 1607中详细讲过,这里就不说啦,这道题目是要求求出所有的重心,因此题目中会有很多最小的最大子树结点数相同,我们只需要在求最小值的时候处理一下等于号,如果不相等,置空答案数组重新存储,如果相等,则在答案数组中顺次存储;#include#include#includeusing namespace std;#d

2015-04-16 00:41:47 397

原创 poj 1655 Balancing Act

题目大意:给你一棵树,求树的重心以及该节点的子树的最大结点数;解题思路:先给大家普及一下基础知识;树的重心:如果在树中把树的重心删除后,那么会把树分成几个部分,这几个部分中的点的个数(即子树的结点个数)的最大值会是最小的;解决方法:首先我们得知道树的各个结点数以及他们子树的最大结点个数,对于任意一个非根结点,总有一个父亲结点和一堆子孙结点,我们在计算一个结点的最大子树结点个

2015-04-16 00:08:52 356

原创 hdu 2196 computer

题目大意:给你一颗树,让你求出树上每一个点可以到达的最远的距离解题思路:先以第一个顶点为根,进行一次dfs,找出从第一个点出发的最长的一个直径,然后再以直径的另外一个端点a,为根进行一次dfs,又可以找出另外一个端点b,可以证明(a,b)即为树的直径(树上任意俩点最远的距离),此外任意一个点的最远距离肯定是以树的直径的某一端点为端点的下面是对这种证法的详细证明:(不

2015-04-15 07:18:42 377

原创 带分数 蓝桥杯

问题描述100 可以表示为带分数的形式:100 = 3 + 69258 / 714。还可以表示为:100 = 82 + 3546 / 197。注意特征:带分数中,数字1~9分别出现且只出现一次(不包含0)。类似这样的带分数,100 有 11 种表示法。输入格式从标准输入读入一个正整数N (N输出格式程序输出该数字用

2015-04-10 10:28:20 674

原创 剪格子 蓝桥杯

问题描述如下图所示,3 x 3 的格子中填写了一些整数。+--*--+--+|10* 1|52|+--****--+|20|30* 1|*******--+| 1| 2| 3|+--+--+--+我们沿着图中的星号线剪开,得到两个部分,每个部分的数字和都是60。本题的要求就是请你编程判定:对给定的m x n 的格子中的整数,是否可以分割为

2015-04-08 23:20:00 478 1

原创 城市建设 蓝桥杯

问题描述  栋栋居住在一个繁华的C市中,然而,这个城市的道路大都年久失修。市长准备重新修一些路以方便市民,于是找到了栋栋,希望栋栋能帮助他。  C市中有n个比较重要的地点,市长希望这些地点重点被考虑。现在可以修一些道路来连接其中的一些地点,每条道路可以连接其中的两个地点。另外由于C市有一条河从中穿过,也可以在其中的一些地点建设码头,所有建了码头的地点可以通过河道连接。  栋

2015-04-08 19:49:23 3614 2

原创 最大子阵 蓝桥杯

问题描述  给定一个n*m的矩阵A,求A中的一个非空子矩阵,使这个子矩阵中的元素和最大。  其中,A的子矩阵指在A中行和列均连续的一块。输入格式  输入的第一行包含两个整数n, m,分别表示矩阵A的行数和列数。  接下来n行,每行m个整数,表示矩阵A。输出格式  输出一行,包含一个整数,表示A中最大的子矩阵中的元素和。样例输入3

2015-04-08 12:42:41 2721 1

原创 连号区间数 蓝桥杯

问题描述小明这些天一直在思考这样一个奇怪而有趣的问题:在1~N的某个全排列中有多少个连号区间呢?这里所说的连号区间的定义是:如果区间[L, R] 里的所有元素(即此排列的第L个到第R个元素)递增排序后能得到一个长度为R-L+1的“连续”数列,则称这个区间连号区间。当N很小的时候,小明可以很快地算出答案,但是当N变大的时候,问题就不是那么简单了,现在小明需要你的帮

2015-04-08 12:35:14 402

原创 小朋友排队 蓝桥杯

问题描述  n 个小朋友站成一排。现在要把他们按身高从低到高的顺序排列,但是每次只能交换位置相邻的两个小朋友。  每个小朋友都有一个不高兴的程度。开始的时候,所有小朋友的不高兴程度都是0。  如果某个小朋友第一次被要求交换,则他的不高兴程度增加1,如果第二次要求他交换,则他的不高兴程度增加2(即不高兴程度为3),依次类推。当要求某个小朋友第k次交换时,他的不高兴程度增加k。

2015-04-07 00:23:50 926

原创 兰顿蚂蚁

解题思路:直接dfs搜索蚂蚁走过的轨迹就OK啦,过程中注意方向的判断#include#include#includeusing namespace std;int map[110][110];char d[5]={'U','R','D','L'};int m,n;int k;void dfs(int row,int col,int cnt,char dir){ if(c

2015-04-06 23:00:38 472

原创 分糖果 蓝桥杯

问题描述  有n个小朋友围坐成一圈。老师给每个小朋友随机发偶数个糖果,然后进行下面的游戏:  每个小朋友都把自己的糖果分一半给左手边的孩子。  一轮分糖后,拥有奇数颗糖的孩子由老师补给1个糖果,从而变成偶数。  反复进行这个游戏,直到所有小朋友的糖果数都相同为止。  你的任务是预测在已知的初始糖果情形下,老师一共需要补发多少个糖果。输入格式 

2015-04-06 22:57:21 796

[Unity]C#并发编程经典实例pdf完整版

[Unity]C#并发编程经典实例pdf完整版,详细的介绍了C#的异步编程,如async,await,parallel等

2018-05-31

空空如也

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

TA关注的人

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