NOI2012. 迷失游乐园

放假了,小Z觉得呆在家里特别无聊,于是决定一个人去游乐园玩

进入游乐园后,小Z看了看游乐园的地图,发现可以将游乐园抽象成有n个景点、m条道路的无向连通图,且该图中至多有一个环(即 m 只可能等于 n 或者 n-1,并且环上节点个数不超过 25 个)。小Z现在所在的大门也正好是一个景点

小Z不知道什么好玩,于是他决定,从当前位置出发,每次随机去一个和当前景点有道路相连的景点,并且同一个景点不去两次(包括起始景点)。贪玩的小Z会一直游玩,直到当前景点的相邻景点都已经访问过为止。小Z所有经过的景点按顺序构成一条非重复路径,他想知道这条路径的期望长度是多少?

小Z把游乐园的抽象地图画下来带回了家,可是忘了标哪个点是大门,他只好假设每个景点都可能是大门(即每个景点作为起始点的概率是一样的)

同时,他每次在选择下一个景点时会等概率地随机选择一个还没去过的相邻景点

(more…)

Read More

用 Shadowsocks 来做 SOCKS5 代理

最近 Shadowsocks 好像非常火呢、这多亏了某不科学的防火长城 -_-#

Shadowsocks 是一个轻量的代理服务,它的服务端提供了 Python、C libev、Go、Node.js 等各个版本,并且客户端可以在 Android、Windows、Mac OS、Unix/Linux 各种平台上运行,并且它是开源的!

我们现在来编译安装 Shadowsocks 的服务端(我们选择 libev 版的)

(more…)

Read More

制作网页版幻灯片——impress.js

impress.js 是一个基于 CSS3 运行在现代浏览器上的表现框架,它的灵感来源于 prezi.com。如果你有一点 web 的基础,你可以用它来制作幻灯片,而且效果十分绚丽,你可以轻松地做出旋转、划动、缩放等特效。因为它是遵循 MIT 和 GPLv2+ 协议的,所以你可以对 impress.js 的源码做任意修改。而且,还有在线的所见即所得的编辑网站 Dyapos 以及 Strut

这里有 impress.js 的示例,打开后你将会看到这样的画面

Example of impress.js

等不及了?那么,我们现在就来制作一个 impress.js 幻灯片

(more…)

Read More