这一年就这样过去了

Merry Xmas

Merry Xmas!

圣诞节悄然而至,再过几天就是2016了。已经不止一次这么感叹了:时间过得太快,总感觉这一年就这么没了。

对于2015年,总想写下一点内容,毕竟有些事情一直释怀不下,可能说出来会好一点。
Pixiv Id 54204715

UVa10285 - Longest Run on a Snowboard

思路

假设从( x, y )出发,并且从( x, y )出发所能走的最长路为 d[x][y],那么设想如果( x - 1, y )的值(即题目所给的高度)要小于(x,y),那么d[x-1][y] + 1 有可能就是我们所要求的d[x][y],因为这条路是单向的,只可能从较小的(x-1, y)走向(x,y)。如果考虑四个方向,用(x’, y’)表示(x , y)上下左右四个方向,那么d[x][y] = max(d[x’][y’]) + 1,且 (x’, y’)上的值要小于(x, y)。那么从这个方程可以看出这实际上可以采用 DFS 加上 dp 的做法,或者称之为记忆化搜索。而 搜索 的终点则是某点(x, y)的四周都比他大,则返回 1。

sort some list elements into an descreasing ones in js

Intro

Sort is a prevalent topic in programing. Although the sort operation mostly is handled by the back-end like PHP, Java and so on, occasionaly some are occured in front-end. Here are some simple instances I dealt with recently.

Bubble-like Sort

Suppose some list elements ordered as follows:

1
2
3
4
5
6
<ul id="demo">
<li>2</li>
<li>1</li>
<li>4</li>
<li>3</li>
</ul>

Every time I filter through the nodes to get the smallest-value one from 1st one to 4nd one, and then I put it to the tail of lists. Next, I still filter to get the smallest-value one but from 1st one to 3nd one, and still put it to the tail to the lists. Now, two elements are sorted, and still two ones stay idle. The operation continues until all the elements have been sorted.
The produceres can be illustrated as follows:

2 1 4 3 -> 2 4 3 1 -> 4 3 1 2 -> 4 1 2 3 -> 1 2 3 4

在JS中实现静态变量/函数

静态变量/方法

静态变量/方法,一般来说是独立於对象的存在,它不属於任何一个具体的对象,它属於每一特定类的所有对象。也可以认为是属於一个类的。静态变量一般用於常数,或者存储某一类的所有对象需要共有的变量。
学JS的时候发现,与JAVA,C++相比,JS并没有明确定义静态的声明或使用方法。虽然没有说,但仍然需要,比如一个很经典的需要就时用静态变量统计一个类被实例化了几次。

在初学JS时犯的一些错误

表示最近在学JS, 相对个人以前学的Python, JAVA之类的语言, JS的语言确实有一些”奇葩”. 把初学时的一些语法错误记录下来,方便自己以后查阅, 如果能帮助到读这篇文章的你自然就更好了.

number 与 string 相加/减/乘/除

Example 1:

1
2
var a  = "5" + 2;   // the result is "52"
var b = 2 + "5"; // the result is "25"

simulation of langton's ant

Introduction to Langton’s Ant

简单来说 Langton’s ant 就是一个简单的数学游戏.

在一平面上,存在无限的等大小的正方形方格,每一个方格要么是白色,要么是黑色. 我们在某一个上放了一只蚂蚁(Ant). 这只蚂蚁每一步可以朝四个方向行走,并且每步行走遵从以下两条规则:

  • 如果蚂蚁在色格子时,就会向转90°,同时颠倒该格子的颜色(变为黑色),最后再向前走一步。
  • 如果蚂蚁在色格子时,就会向转90°,同时颠倒该格子的颜色(变为白色),最后再向前走一步。

test

1
2
3
4
5
6
7
8
// Colors
@black: #414141;
@white: #ffffff;
@text-color: @black;
@background-color: #EBECEE;
@brand-color: @material-teal;
@accent-color: @material-orange;
@grey-color: #828282;

(旧文)2015省赛小感想

注意: 这篇文章我曾于 2015 年 5 月 2 日发表在 CnBlog 上。因为那个 blog 我已经几乎不维护,所以准备把部分文章转移至这里。另外,因为那时我还没有在 GitHub 上建立站点,所以这篇文章的发表时间早于这个站点的最早搭建时间。

上个月26号,我有幸参加了今年的浙江省省赛。第一次参加正式的ACM比赛,心里略有点小激动。我的队友们也是第一次参加,还好同行的还有学长学姐们的队伍。

ACM