自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Siukwan Program

http://siukwan.sinaapp.com/

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

原创 Haproxy实战:80端口转发到webserver和ssh

转自:siukwan的个人博客-Haproxy实战:80端口转发到webserver和ssh服务器原来配置了haproxy,因为对外只开放了80端口,没有开放22端口,所以haproxy配置了端口转发,规则如下(在/etc/haproxy/haproxy.cfg):#By http://blog.creke.net/global maxconn 5120

2016-01-29 10:00:40 9345

原创 linux cron实战:定时github

转自个人博客:http://siukwan.sinaapp.com/?p=948">siukwan的个人博客相关文章:GitHub第一步:生成ssh keys最近由于需要使用实验室的一台高性能工作站来跑程序,ssh进行远程登录,但是有时候电脑重启后,ip发生变化,于是在思考用什么办法来存储这台电脑的ip地址。刚开始的想法是把ip地址直接上传到这个博客,定时更新。后来

2016-01-12 15:37:09 989

原创 CMakeList.txt中包含父目录文件

转自个人博客:http://siukwan.sinaapp.com/?p=9301.最近在apue编程中,需要规范项目,所以把错误函数统一放到根目录下,整个文件的假如如下图所示: 其中func_err.cpp和func.h是在根目录中,而CMakeLists.txt是在根目录的1stUNIXSystemOverview文件夹中,那么需要连接编译func.h和func_err.cpp时怎么办呢?包含

2016-01-02 19:27:59 4467

原创 37. Sudoku Solver(Hard)

转自个人博客:http://siukwan.sinaapp.com/?p=787 1.这道题目主要是使用回溯法进行遍历,其中需要注意的是进行剪枝。剪枝情况如下:首先是遍历可以填充的数字,如果遍历完后都没有可以填充,那么就直接回溯,不用继续遍历接下来的空格。另外最基本的就是用hash检测行列和方块里面的数字是否已经被使用,其中方块数字的index应该为[i/3*3+j/3]。AC代码如下:class

2015-12-23 00:16:11 551

原创 智力拼图问题–关于回溯和并行:单线到多线程再到GPU编程的进阶(一)

转自个人博客:http://siukwan.sinaapp.com/?p=671 相关文章: 智力拼图问题–关于回溯和并行:单线到多线程再到GPU编程的进阶(一) 智力拼图问题–关于回溯和并行:单线到多线程再到GPU编程的进阶(二) 智力拼图问题–关于回溯和并行:单线到多线程再到GPU编程的进阶(三)最近算法设计上面有一个回溯的题目,要求使用回溯算法解答,题目如下:智力拼图问题设有12个平面

2015-12-15 20:21:00 1725

原创 关于centOS无法识别1920*1080分辨率的解决方法

转自个人博客:http://siukwan.sinaapp.com/?p=616安装了centOS后,发现display选项里面只有1024*768和800*600的选项,而显示屏是1920*1080的。于是开始想办法进行分辨率的适配。通过查资料知道,修改分辨率主要有两种方法:方法一:使用xorg.conf文件(这个方法失败了!原因尚未找到,想要解决办法的童鞋可以直接看第二种方法)1.首先切换到命令

2015-12-07 14:15:51 34237 4

原创 PAT甲级(Advance Level)冬季考试总结20151205

转自个人博客:http://siukwan.sinaapp.com/?p=597今天中午刚考完PAT甲级考试,4道题目分别考察的内容如下:1.数学统计,题目给出了sequence的定义,根据该定义进行统计,通过定义我们可以找出每个数出现的次数规律,譬如有数组a[0],a[1],a[2]….a[n-1]共n个数,假设数字a[0]出现的次数times,那么a[1]出现的次数为times1=times-1

2015-12-05 19:26:37 3231 2

原创 GitHub第一步--生成ssh keys

转自个人博客:http://siukwan.sinaapp.com/亲自在Mac OS和cent OS中测试成功,命令均一样。SSH keys可以无需密码进行github更新,每台电脑均需要生成唯一的SSH并添加到github个人资料的settings中。Step 1: 检查SSH keys首先我们需要检测系统是否已经存在SSH keys,可以使用终端输入下列的命令

2015-12-04 19:41:30 1158

原创 A级103道PAT题目的简单总结

转自:http://siukwan.sinaapp.com/?p=512 2015-11-30:对103道PAT题目做简单的总结:1001 A+B Format (20) string处理,注意正负号1002 A+B for Polynomials (25) 直接建立两个数组,相加输出1003 Emergency (25) Dijkstra+DFS1004 Counting Leaves (30)

2015-11-30 21:26:33 2759 1

原创 310 Minimum Height Trees(Medium)

转自个人博客:http://siukwan.sinaapp.com/?p=1891.这道题目主要是求一个无向图中,以哪个节点为根节点的树的高度最小;2.常规方法可以使用BFS或者DFS,对每个点都遍历一遍,求出所有点组成的树的高度,然后找出哪些高度最小的节点,可以通过不断更新最低高度来进行剪枝。实际上我写了BFS和DFS的程序,均出现超时。3.最终的解题思路采用了不断删除叶

2015-11-30 18:06:03 1876

原创 1008. Elevator (20)

1.该题较为简单AC代码://#include//#include #include#include //#include#include#include#include//#include//#include//#include //#include "func.h"//#include #include#include#include#inclu

2015-11-27 20:35:34 274

原创 1002. A+B for Polynomials (25)

1.直接建立1001长度的数组,分别进行存储,最后累加输出AC代码://#include//#include//#include//#include //#include "func.h"//#include #include #include#include#include#include#include#include #include#includ

2015-11-27 20:30:37 894

原创 1001. A+B Format (20)

1.主要是字符串处理,然后插入逗号2.注意正负数3.输入可以直接使用int类型读取AC代码//#include//#include//#include//#include //#include "func.h"//#include #include #include#include#include#include#include#in

2015-11-27 20:23:35 333

原创 1060. Are They Equal (25)

1.涉及的情况比较多,需要分类讨论。自己卡在了补零的运算中,代码有注释,是一个小失误,导致最后一个测试点调试了比较长时间2.下面列出了一些测试点,通过这些测试点,也就可以AC了:3 12300 12358.9YES 0.123*10^51 12300 12358.9YES 0.1*10^51 1.2300 1.23589YES 0.1*10^1

2015-11-27 20:10:44 440

原创 1057. Stack (30)

1.本题的中间三个测试点非常容易超时2.需要采用树状数组+二分法树状数组:能够在o(logn)的时间内进行对a[i]操作和统计a[0]+a[1]+a[2]+...a[i]的操作。我们把a[i]记录为i的出现次数,那么统计sum=a[0]+a[1]+a[2]+...a[i],就可以知道小于等于i的元素出现的次数。而PeekMedian操作中,是求n/2或者(n+1)/2的元素,即当sum

2015-11-27 19:07:09 387

原创 1056. Mice and Rice (25)

1.题目的要求是,每次选取NG个用户组成一组进行比赛,第一名进入下一轮,其他落败的用户排名相同2.刚开始卡在了这里,误以为在最后议论的比赛中,用户要排1,2,3,4。。结果不是,最后一轮,胜出的排第一名,落败的均为第二名3.排名的统计,假如这次有N个group,那么这次落败的用户排名为N+14.第三个数组是用户次序,如6 0 8 7 10 5 9 1 4 2 3则分组为:6 0

2015-11-27 18:34:50 686

原创 1066. Root of AVL Tree (25)

1.这道题比较重要,主要考察AVL树的建立2.需要掌握单旋转,双旋转,插入等操作//#include//#include//#include//#include //#include "func.h"//#include #include #include#include#include#include#include#include #include#

2015-11-27 12:40:05 298

原创 1064. Complete Binary Search Tree (30)

1.建议一个n节点的 完全二叉树,然后使用中序遍历,把地址数组遍历出来,再填充数组2.注意读取的数组需要先排序,在填充到完全二叉树的中序遍历数组中//#include//#include//#include//#include //#include "func.h"//#include #include #include#include#include#incl

2015-11-27 12:37:58 268

原创 1059. Prime Factors (25)

1.一个大于等于2的数,质因数分解分两种情况:1)如果这个数是质数,那么质因数分解就是它本身2)如果不是质数,那么除去最大的质因数后,剩下的质因数均小于sqrt(n),所以遍历到sqrt(n)即可2.注意输入为1的情况,输出应该为1=1AC代码://#include//#include//#include//#include //#include

2015-11-26 20:16:32 472 1

原创 1058. A+B in Hogwarts (20)

1.该题不难,主要是字符串的处理和进制处理AC代码://#include//#include//#include//#include //#include "func.h"//#include #include #include#include#include#include#include#include #include#include#inclu

2015-11-26 20:03:08 268

原创 1055. The World's Richest (25)

1.先把用户按照年龄大小排序,因为后面给出的是年龄范围,所以需要快速找出符合年龄要求的用户2.建立一个年龄数组,该数组记录了以年龄x为左界时,用户数组的idx,以年龄x为右界时,用户数组的idx,通过年龄数组,就可以快速定位到用户数组的对应位置3.刚开始,在查询输入时,直接定位到用户数组,把对应的用户数组段复制出来,进行排序,但是会超时(卡了还挺久的),然后仔细思考,发现用户数组的数量可能

2015-11-26 15:07:05 312

原创 1054. The Dominant Color (20)

1.该题求出现次数超过一半的元素,故采用moore voting算法,moore投票法2.遇到不同的元素,如果出现次数为0,更跟换成当前元素,如果次数不为0则-1,3.遇到相同元素,出现次数相加4.最终记录的元素就是所求元素//#include//#include//#include//#include //#include "func.h"//#incl

2015-11-26 12:53:43 752

原创 1053. Path of Equal Weight (30)

1.该题使用树节点数据结构,其中包含vector child列表和权重值2.使用DFS进行遍历搜索(节点最多100个),能够满足要求AC代码://#include//#include//#include//#include //#include "func.h"//#include #include #include#include#include#

2015-11-26 11:26:50 282

原创 1052. Linked List Sorting (25)

1.这道题目主要有两个难点1)以head为头部的链表不一样包括全部n个,即输入的数据中存在多个链表,但是我们只需要对以head为头部的链表排序输出即可,这也是为什么结果要求我们输出排序后的链表大小,因为这个大小不一定和n相等;2)head为-1的情况,卡在这里比较久,需要特殊判断,然后输出0 -12.采用建立链表,然后拷贝到vector上进行排序输出AC

2015-11-26 10:53:08 251

原创 1051. Pop Sequence (25)

1.这道题是判断出栈队列是否合理2.采用了用栈来模拟情况3.当目前栈为空,或者栈不为空并且栈顶不等于目标值,并且队列中还有数值可以压入,栈的size小于最大容量,那么就一直循环执行压入操作,把123456789。。。队列中的值依次压入栈,直到跳出循环4.跳出循环后,判断栈顶是否等于目标值,不等于的话,这个sequence就是不合理的,如果等于,则把栈顶的值pop掉,再执行步骤3

2015-11-26 09:26:06 405

原创 1063. Set Similarity (25)

1.AC代码://#include//#include//#include//#include //#include "func.h"//#include #include #include#include#include#include#include#include #include#include#include#include#in

2015-11-25 23:11:47 478

原创 1062. Talent and Virtue (25)

1.主要涉及到一个根据规则排序的问题2.分类规则1)圣人,sages,virtue和talent都要>=high2)君子,nobleman,virtue>=high,talent=low3)愚人,fool man,low4)愚人之后仍显示的,virtue>=low,talent>=low3.跟结构体增加了一个level的变量,记录其所在的等级,排序比较函数如下:bool

2015-11-25 20:33:29 269

原创 1061. Dating (20)

1.第一对string中,DAY的char需要限制在A到G之间,一个星期只有7天;HOUR的char需要限制在A到N,0到9之间,这样才是合理的0~23小时2.之前卡在了没有限制HOUR的char需要限制在A到N,0到9之间。//#include//#include//#include//#include //#include "func.h"//#include #i

2015-11-25 20:07:07 589

原创 1068. Find More Coins (30)

1.这道题目采用深度遍历,因为需求最大是100,因为硬币价值是正数,那么最多需要100个硬币,即进行DFS的深度为100,可以接受2.需要进行剪枝:1)把coin价值从小到大排列2)从第一个开始遍历,如果价格减去这个硬币的价值后,剩下的价格小于这个硬币的价值,那么可以continue。因为后面的硬币价值都大于等于现在硬币的价值,有一种情况例如,就是价格减去这个硬币的价值后,刚好等于0,

2015-11-25 19:30:15 536

原创 1067. Sort with Swap(0,*) (25)

1.用一个数组pos记录各个元素所在的位置2.假设0所在的位置为i,那么正确的排序应该是i在位置i上,所以0应该和i交换,即0的位置和i的位置交换,swap(pos[0],pos[i]),又pos[0]=i,即0的位置在i上,所以swap(pos[0],pos[pos[0]])3.通过2中提到的,每次都把一个数换到正确的位置,步数最小4.可能还存在尚未结束,但是0已经在位置0上,此时进

2015-11-25 18:55:08 263

原创 1065. A+B and C (64bit) (20)

1.使用string读取a和b,如果符号相同,按照字符串来处理,因为两个负数或者两个正数相加,会超过最大的取值范围2.如果符号不同,那么a+b一定会在范围内,可以使用long long进行处理和比较//#include//#include//#include//#include //#include "func.h"//#include #include #inclu

2015-11-25 18:33:50 354

原创 1072. Gas Station (30)

1.题目要求一个加油站,能够到达所有的屋子,并且这个加油站到屋子的最小距离尽可能地大(实际上也应该,不然汽油挥发会影响人身安全啊啊啊)2.根据汽油站index排序时,不能使用string,要转换成int排序,避免出现G13.通过dijkstra求每个加油站到各个屋子的距离,即dijkstra外加一个循环遍历。然后统计所有的最短路径和平均路径,进行排序4.最小距离一样的,根据平均距离来排

2015-11-25 17:10:48 1313

原创 1071. Speech Patterns (25)

1.首先是字符串处理,把大写字母的全改为小写字母2.字符串分隔,遇到不是数字或者字母的字符,就进行分隔3.使用map来存储次数,最后再存到vector中排序输出4.需要使用scanf读取字符,不能使用getlineAC代码://#include//#include//#include//#include //#include "func.h"//#

2015-11-25 12:10:58 237

原创 1070. Mooncake (25)

1.卡在测试点2比较久,结果发现amount也需要使用double才能通过,使用long long或者int都不行2.贪心算法,每次取单位价格最高的mooncake存储结构:struct mooncakeNode{ double amount;//需要使用double,才能通过测试点2 double price; double unitPrice; mooncakeNode()

2015-11-25 11:17:45 365

原创 1069. The Black Hole of Numbers (20)

1. 6174猜想 ,1955年,卡普耶卡(D.R.Kaprekar)研究了对四位数的一种变换:任给出四位数k0,用它的四个数字由大到小重新排列成一个四位数m,再减去它的反序数rev(m),得出数k1=m-rev(m),然后,继续对k1重复上述变换,得数k2.如此进行下去,卡普耶卡发现,无论k0是多大的四位数, 只要四个数字不全相同,最多进行7次上述变换,就会出现四位数6174.2.需要注意输

2015-11-25 10:19:07 1021

原创 1076. Forwards on Weibo (30)

1.该题需要采用合适的数据结构,本程序使用了用节点来进行存储,节点中有一个followers列表,记录了谁关注了该用户2.使用层次遍历,直到最大level。3.需要注意,用一个hasForwarded数组记录哪些用户已经转发,每个用户只转发一次。AC代码://#include//#include //#include//#include//#incl

2015-11-25 09:31:14 304

原创 1075. PAT Judge (25)

1.该题有几个需要注意的点1)-1表示提交了但是没有编译通过,在最终输出的时候需要显示0分2)完全没有记录的,表示没有提交过,在最终输出的时候需要显示-3)在排名时,要把0分的也进行排名,如下面的测试例子:8 4 2120 25 25 3000002 2 1200007 4 1700005 1 1900007 2 2500005 1 2000002 2

2015-11-24 22:06:15 1245

原创 1074. Reversing Linked List (25)

1.改题与leetcode中的Reverse Linked List 和Reverse Linked List II相似2.这次解法并没有采用链表操作,而是把链表转化为数组,对数组进行操作AC代码如下://#include//#include //#include//#include//#include //#include "func.h"//#include #i

2015-11-24 20:10:55 331

原创 1073. Scientific Notation (20)

1.根据E后面是正数还是负数,决定小数点左移还是右移2.我的算法是,先提取出正负号和E之间的数字(已经去掉小数点),即+1.234567E+04,经过提取后变为1234567,后续直接对这个字符串进行处理3.右移时,需要注意3种情况1)如+1.200E+03,为1200   ,刚好不需要补零和小数点2)如+1.234567E+04 为12345.67 , 需要补小数点3)如+1

2015-11-24 19:24:42 420

原创 1080. Graduate Admission (30)

1.注意排名,在总分数和各个分数相同的情况下,排名必须相同2.注意录取,学校记录一个最后录取学生的排名,当学校没有名额后,判断这个排名和当前申请的学生排名是否相等,如果相等,则必须录取这个学生//#include//#include //#include//#include//#include //#include "func.h"//#include #includ

2015-11-24 18:50:55 637

离散数学及其应用_本科教学版_第6版_Kenneth__H.__Rosen_课后答案[1-10章].khda

离散数学及其应用_本科教学版_第6版_Kenneth__H.__Rosen_课后答案[1-10章].khda

2015-02-16

Siukwan专用微博发布端

siukwan专用发布端是一个windows桌面发布端,具备物联网功能

2012-10-29

2011年中山大学摄像头一队技术报告

2011年中山大学摄像头一队技术报告,优秀技术报告,获得国家一等奖 第六届“飞思卡尔”杯全国大学生 智能汽车竞赛 技 术 报 告

2012-10-08

空空如也

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

TA关注的人

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