自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(228)
  • 收藏
  • 关注

转载 最小的图灵完备语言——BrainFuck

最小的图灵完备语言——BrainFuck图灵完备性(Turing completness)在可计算性理论(computability theory)中,图灵等价指的是:对于两个计算机A和B,如果A可以模拟B,B可以模拟A,就称他们是图灵等价的。根据“丘奇-图灵”理论,图灵机是表达能力最强大的计算系统,对现实世界中的任何计算机,都可以用图灵机1来模拟它。腻不腻害!如果某个系统能够...

2015-10-10 03:13:00 470

转载 蛋疼的SVG外部引用方式

SVG在html页面中有两种引用方式:1. 内联。就是直接将SVG图形写在html的svg标签中,比如:<html> <head></head> <body> <svg ...> > ... > 内联式 </svg> ...

2015-10-03 01:16:00 481

转载 HackerRank# Hexagonal Grid

原题地址铺瓷砖的变种,做法也是类似假设地板长下面这样,灰色的是无法填充的空洞,初始时可以把N块之外的地板填充成灰色的,便于边界处理假设现在从后向前已经处理完了一部分,绿色的砖块代表已经遍历过了,蓝色虚线框代表已经计算完成的子问题现在要遍历红色边框的地砖只可能有两种铺法:如果可以向下铺,很简单,递推到另一个子问题...

2015-05-10 22:32:00 170

转载 HackerRank# The Longest Common Subsequence

原题地址LCD,经典动归,O(n^2)复杂度因为要输出子序列,所以啰嗦一些 1 #include <cmath> 2 #include <cstdio> 3 #include <vector> 4 #include <iostream> 5 #include <algorithm>...

2015-05-06 23:54:00 81

转载 HackerRank# Bricks Game

原题地址DP很简单,懒得压缩空间了,反正都能过 1 #include <cmath> 2 #include <cstdio> 3 #include <vector> 4 #include <iostream> 5 #include <algorithm> 6 #include <...

2015-05-06 21:59:00 95

转载 HackerRank# Fibonacci Modified

原题地址竟然64位都要爆,这是要大整数乘法的节奏吗?我才不要写大整数乘法呢,用Ruby干掉代码:1 # Enter your code here. Read input from STDIN. Print output to STDOUT2 num = [0, 0]3 num[0], num[1], n = readline.chomp.split('...

2015-05-06 00:33:00 91

转载 HackerRank# Knapsack

原题地址背包问题:容量为k,物品的体积和价值相等,求最大价值是多少代码: 1 #include <cmath> 2 #include <cstdio> 3 #include <vector> 4 #include <iostream> 5 #include <algorithm> ...

2015-05-05 23:57:00 115

转载 HackerRank# Red John is Back

原题地址简单动归+素数判定,没用筛法也能过代码: 1 #include <cmath> 2 #include <cstdio> 3 #include <vector> 4 #include <iostream> 5 #include <algorithm> 6 #include &...

2015-05-05 23:39:00 80

转载 HackerRank# Stock Maximize

原题地址不知道为什么要用动态规划做,明明是扫几遍就行了啊HackerRank上的题目特别喜欢long long类型啊,不用就爆。。代码: 1 #include <cmath> 2 #include <cstdio> 3 #include <vector> 4 #include <iostream>...

2015-04-30 00:05:00 100

转载 HackerRank# Candies

原题地址LeetCode上也有这道题,直接扫一遍就行了,连数组都不用开,感觉像是蕴含了某种动归的思想在里面,要不怎么是个动归题呢代码: 1 #include <cmath> 2 #include <cstdio> 3 #include <vector> 4 #include <iostream> ...

2015-04-29 23:37:00 72

转载 HackerRank# The Coin Change Problem

原题地址背包问题,没啥好说的,记得用long long,否则会爆代码: 1 #include <cmath> 2 #include <cstdio> 3 #include <vector> 4 #include <iostream> 5 #include <algorithm> 6...

2015-04-29 22:54:00 94

转载 HackerRank# Wet Shark and Two Subsequences

原题地址对于给定的两个约束条件,可以通过联立方程组直接解出子序列A的和和子序列B的和,即sum(A) = (r + s) / 2,sum(B) = (r - s) / 2,假设|A|=|B|=n所以问题变成了,在一个数组中求长度为n且子序列和为sum(A)或sum(B)有多少个。假设count(n, s)表示长度为n且子序列和为s有多少个,则要求的是count(n, s...

2015-04-29 00:03:00 96

转载 hihoCoder#1086 Browser Caching

原题地址list+map可以轻松搞定,如果不借助STL实现起来还是挺麻烦的代码: 1 #include <iostream> 2 #include <string> 3 #include <list> 4 #include <map> 5 6 using namespace std; 7...

2015-04-13 21:09:00 76

转载 hihoCoder#1141 二分·归并排序之逆序对

原题地址又是一道WA成狗的题,最后发现原来是结果溢出了。。代码: 1 #include <iostream> 2 #include <cstring> 3 4 using namespace std; 5 6 #define MAX_N 100008 7 8 int N; 9 long long a...

2015-04-10 23:08:00 86

转载 hihoCoder#1139 二分·二分答案

原题地址挺简单一道题,结果因为一时傻逼写错一个小地方,导致WA成狗了_(:з」∠)_代码: 1 #include <iostream> 2 #include <cstring> 3 #include <queue> 4 5 using namespace std; 6 7 #define MAX_...

2015-04-10 22:10:00 97

转载 hihoCoder#1133 二分·二分查找之k小数

原题地址经典问题了,O(n)时间内找第k大的数代码: 1 #include <iostream> 2 3 using namespace std; 4 5 int N, K; 6 int *a; 7 8 int search(int left, int right, int k) { 9 if (left &gt...

2015-04-09 22:57:00 90

转载 hihoCoder#1128 二分·二分查找

原题地址一开始没搞懂题目是想干什么,于是写了一个扫一遍的代码,A了,如下:代码: 1 #include <iostream> 2 3 using namespace std; 4 5 int main() { 6 int N, K, a; 7 bool found = false; 8 int lt = ...

2015-04-09 21:25:00 112

转载 hihoCoder#1127 二分图三·二分图最小点覆盖和最大独立集

原题地址主要是介绍了两个定理:1. 二分图最大匹配数 = 二分图最小点覆盖数2. 二分图最小点覆盖数 = 二分图顶点数 - 二分图最小点覆盖数注意,都是二分图代码:(匈牙利算法) 1 #include <iostream> 2 #include <cstring> 3 4 using namespa...

2015-04-09 20:57:00 83

转载 hihoCoder#1122 二分图二•二分图最大匹配之匈牙利算法

原题地址只能说匈牙利算法不能更屌,而且提示里给的伪码也不能更屌了!只用了第二个优化,因为将输入点集分割成A、B似乎挺麻烦的,索性就没用这个优化。代码: 1 #include <iostream> 2 #include <cstring> 3 4 using namespace std; 5 6 #define...

2015-04-07 22:49:00 76

转载 hihoCoder#1105 题外话·堆

原题地址有没有更优雅地堆模板啊,总感觉我写的有些啰嗦代码: 1 #include <iostream> 2 3 using namespace std; 4 5 #define MAX_NODE 100008 6 7 struct Heap { 8 int core[MAX_NODE]; 9 int s...

2015-04-07 20:50:00 80

转载 hihoCoder#1109 最小生成树三·堆优化的Prim算法

原题地址坑了我好久。。。提交总是WA,找了个AC代码,然后做同步随机数据diff测试,结果发现数据量小的时候,测试几十万组随机数据都没问题,但是数据量大了以后就会不同,思前想后就是不知道算法写得有什么问题,因为本来就没什么复杂的地方嘛!后来,突然灵机一动,莫非又是数组开小了?突然意识到,我是用数组保存图的,所以对于无向图,边数实际上是输入的2倍,于是把数组开成2倍...

2015-04-06 23:58:00 89

转载 hihoCoder#1098 最小生成树二·Kruscal算法

原题地址以前没写过Kruscal算法,写了才知道原来比Prime算法简单多了。。。并查集的应用太经典了!代码: 1 #include <iostream> 2 #include <cstdlib> 3 4 using namespace std; 5 6 #define MAX_EDGE 1000008 ...

2015-04-06 21:10:00 73

转载 hihoCoder#1097 最小生成树一·Prim算法

原题地址Prime算法,每次挑选一个距离原点最近的节点,然后收缩(visited为true,设置该点到原点的距离为0)注意:虽然Prime算法跟Dijkstra很像,但两者还是不一样的。因为Dijkstra算法每次在挑选节点后不会收缩,所以,用Dijkstra挑选的边并不一定是最小生成树。比如下面这张图,有a、b、c三个节点 2 a----b...

2015-04-06 20:37:00 67

转载 hihoCoder#1093 最短路径·三:SPFA算法

原题地址宽搜+剪枝,不是说好了适用于稀疏矩阵的嘛,怎么题目的测试数据边数达到10^6。。。不科学代码: 1 #include <iostream> 2 #include <cstring> 3 #include <map> 4 5 using namespace std; 6 7 #define ...

2015-04-06 20:17:00 66

转载 hihoCoder#1089 最短路径·二:Floyd算法

原题地址感觉Floyd算法比Dijkstra还要简单。。唯一需要注意的是,初始的距离默认值不要设过大,否则溢出就不好了,根据题意,只要大于10^3即可代码: 1 #include <iostream> 2 #include <cstring> 3 4 using namespace std; 5 6 #def...

2015-04-06 20:15:00 68

转载 hihoCoder#1081 最短路径·一

原题地址Dijkstra算法,甚至都不用优化(堆或优先队列)即可过代码: 1 #include <iostream> 2 #include <vector> 3 #include <set> 4 #include <cstring> 5 6 using namespace std; 7 ...

2015-04-06 20:13:00 85

转载 博客搬迁至Gitcafe

原先的Github pages貌似在国内被墙了,导致搜索引擎一直没有索引到,今天一怒之下迁到Gitcafe虽然之前的模板用不成,害我重新找了一套,改了好半天,不过总算弄完了????新博客主要会放一些杂七杂八的东西,以后慢慢会那里迁移,这个博客也一直会使用,主要是放一些刷题的总结欢迎前去围观--->这里转载于:https://www.cnblogs.com/boring09...

2015-04-02 14:24:00 83

转载 hihoCoder#1078 线段树的区间修改

原题地址提示给的伪代码非常赞????,按照提示做,难度为0代码写的偏工程风,果然冗长了许多_(:з」∠)_代码: 1 #include <iostream> 2 3 using namespace std; 4 5 #define MAX_NODE 100008 6 7 struct TreeNode {...

2015-04-01 22:34:00 78

转载 hihoCoder#1077 RMQ问题再临-线段树

原题地址终于做到线段树的题了,因为建树、更新、查询都是递归操作,所以其实挺好写的。用数组存的树,记得MAX_NODE开成两倍叶节点数大小,否则RE啊。。不要问我是怎么知道的。代码: 1 #include <iostream> 2 #include <climits> 3 using namespace std; ...

2015-04-01 20:19:00 92

转载 hihoCoder#1070 RMQ问题再临

原题地址模拟题,naive算法即可过,想着顺便练习一下ST吧,结果还超时了。。。看来ST真不适合处理动态修改的问题,连naive算法的效率都不如。超时的ST代码: 1 #include <iostream> 2 3 using namespace std; 4 5 #define MAX_NODE 10008 6 ...

2015-04-01 14:39:00 52

转载 hihoCoder#1069 最近公共祖先·三

原题地址根据提示用Spase Table做将Tree先展成List,因为数组长度等于边数的2倍,树中边数等于节点数-1,所以List数组只要开2倍节点数大小即可WA了几次,原来是查询的时候出现左边界大于右边界的情况,所以这种情况要颠倒一下代码: 1 #include <iostream> 2 #include <vector&gt...

2015-04-01 09:58:00 59

转载 hihoCoder#1068 RMQ-ST算法

原题地址Spare Table练习记得用scanf和printf输入输出,否则会TLE代码: 1 #include <iostream> 2 #include <cstring> 3 #include <cmath> 4 5 using namespace std; 6 7 #define M...

2015-04-01 09:54:00 68

转载 hihoCoder#1048 状态压缩·二

原题地址位运算的状态压缩太操蛋了,很容易出错。。。又是数组没开够导致诡异现象(明明某个值是1,莫名其妙就变成0了),害我debug一整天!fuck代码: 1 #include <iostream> 2 #include <cstring> 3 4 using namespace std; 5 6 #define ...

2015-03-31 16:48:00 94

转载 hihoCoder#1036 Trie图

原题地址看了这篇博文,总算是把Trie图弄明白了Runtime Error了无数次,一直不知道为什么,于是写了个脚本生成了一组大数据,发现果然段错误了。调试了一下午,总算闹明白了,为什么呢?1. 空间超大的变量不要放在函数里,会爆栈,应该弄成全局变量或者是从堆上动态分配。2. 看清题目的数据范围,一开始我的MAX_NODE设的是1024。。。代码:...

2015-03-30 22:14:00 59

转载 hihoCoder#1066 无间道之并查集

原题地址并查集+路径压缩数据量不大,没有加秩优化代码: 1 #include <iostream> 2 #include <map> 3 #include <cstring> 4 5 using namespace std; 6 7 #define SIZE 100010 8 9 i...

2015-03-30 09:15:00 83

转载 hihoCoder#1067 最近公共祖先·二

原题地址超时、超内存都碰到了。。最后还是参考了这篇博文才勉强AC需要注意:1. 肯定是树而不是森林,而且树的根节点一定是第一个出现的名字,所以不需要再去找哪个是根了。这样可以节省一部分内存。2. 用并查集路径压缩的方法维护并查集结构即可,当查找的时候再压缩,不需要每次染黑节点的时候都压缩。这样可以节省一部分时间。3. 字符串都转成id再做。4. 能静态申请内...

2015-03-29 23:33:00 74

转载 hihoCoder#1062 最近公共祖先·

原题地址A和A的共同祖先是A,即使A没有在之前的家谱中出现过!被这个坑了,WA了很久。。。比如:小头爸爸是大头儿子他爹,问:隔壁王叔叔和隔壁王叔叔的最近祖先是谁?,答:隔壁王叔叔。代码: 1 #include <iostream> 2 #include <map> 3 #include <set> 4 #in...

2015-03-29 20:18:00 70

转载 hihoCoder#1055 刷油漆

原题地址第一次做树的动归题,如果没有提示的话还是挺难的提示里的递推式隐含了状态压缩(m从大往小遍历),不是那么好想,只能说不能再屌了。代码: 1 #include <iostream> 2 #include <cstring> 3 4 using namespace std; 5 6 #define SIZE...

2015-03-29 18:21:00 82

转载 hihoCoder#1054 滑动解锁

原题地址回溯搜索对于每个待枚举的点,检查:1. 度数检查:是否违反了出度入度限制。因为生成的路径除了首尾节点外,其他节点的出度和入度只能为22. 共线检查:是否违反了共线条件。即跨越了尚未枚举过的节点对于枚举产生的路径,检查:1. 长度检查:长度是否大于等于42. 完整性检查:是否包含了片段中出现的所有边代码: 1 #include ...

2015-03-29 13:08:00 54

转载 hihoCoder#1052 基因工程

原题地址找规律题如果首尾如果不交,那么不一样的位数就是需要变换的次数。如果首尾相交,似乎比较复杂,所以找找规律。假设字符串是这样的(上下是同一个字符串,只是为了方便描述首尾部分而分开画的),要让蓝色的首尾部分相同:因为是一个字符串,所以虚线部分相同。即,下图中红色方框部分相同。因为蓝色首尾部分相同,所以有:...

2015-03-28 00:44:00 71

空空如也

空空如也

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

TA关注的人

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