Avatar_small

RGSS2脚本教程——PART1 开始

RGSS2 RGSS2 (Ruby Game Scripting System2),中文意思就是:Ruby游戏脚本系统,是一个脚本性质的游戏编程系统,并不是整个游戏都用它来生成,RPG maker 所能做的只是一些有限的功能,而这些功能,是由厂家也就是EB!所规定的,我们只能在自己力所能及的范围内来挖掘RGSS2的潜力。 开始 简单的脚本: 我...

Avatar_small

种子染色法:The Castle

种子染色法 种子染色法英文叫做Flood Fill ,实际上Flood Fill这个名称更贴切一点,因为这个方法作用在一个图的结点上时恰似洪水一样“淹没”与之相连的其他结点并以相同的方式蔓延出去,这个方法通常用于计算一个图的极大连通子图(这里的“图”是图论的概念)。设想一个无向图,我们从这个图中一个未标号(“标号&rd...

Avatar_small

UDP打洞实验

两台没有外网 IP、在 NAT 后边的主机如何直连?UDP打洞通常可行,但是需要第三方服务器。方法如下: 在服务器 S 上监听一个 UDP 端口,在收到 UDP 数据包后把源地址发回去。代码如下(github): import sys import time import socket def main(port): s = socket.socket(s...

Avatar_small

一切都是文件,为何窗口不是?

UNIX 说,一切都是文件。 偏偏我们每天面对的屏幕不是文件,窗口不是文件。 cli 程序都是从 stdin 获得输入,偏偏为何 gui 程序要从所谓的 “窗口消息” 获得呢? “从一切都是文件” 的角度而言,这是不可取的。 我来提出一个构思: 该设计由两部分组成,一个内核实现的虚拟文件系...

Avatar_small

C++ Primer 4th Edition 学习笔记

大二的Jingo需要到二校区给学弟们当C\C++程序设计实验课的TA,为了不出现各种XXOO而Jingo解决不了的事情,外加因为一直不按照C++标准去写程序,C\C++特性乱用的Jingo的确想改一下自己写代码的风格习惯,趁着前几周课程不紧,Jingo决定拜读学习一下《C++ Primer 4th Edition》。为了监督自己的学习和备忘,Jingo每天要记下一点学习笔记。 ...

Avatar_small

USACO 第一章终结

至此第1.5关通关,第一章也随之终结,第二章开启。 1.5关除了Prime Palindromes(参见 构造式枚举:Prime Palindromes)之外还有: Number Triangles - 简单的动态规划。 SuperPrime Rib - 又一个搜索特殊素数的问题,一个SuperPrime是形如2333的数(它的“子数”2...

Avatar_small

termios示例之不回显字符

#include <termios.h> #include <stdio.h> #include <stdlib.h> #define PASSWORD_LEN 8 int main() { struct termios initialrsettings, newrsettings; char password[P...

Avatar_small

深度优先搜索:Mother's Milk

至此第1.4关通关。 Farmer John has three milking buckets of capacity A, B, and C liters. Each of the numbers A, B, and C is an integer from 1 through 20, inclusive. Initially, buckets A and B...

Avatar_small

怕超时?哈希一下:Arithmetic Progressions

我们将所有能写成 p2+q2(p,q>=0)的数字成为bisquare数,在bisquare集合中有多少长度为N(3<=N<=25)的等差序列?我们规定p,q的取值区间为[0,M](1<=M<=250),且等差序列的公差大于0。 我们很容易想到枚举序列中的前两项(或者首项和尾项,这正是我用的方法,这样便于剪枝)来确定整个序列并检验其余项是否是bis...

Avatar_small

时间和空间的矛盾:The Clocks

Consider nine clocks arranged in a 3x3 array thusly: |-------| |-------| |-------| | | | | | | | |---O | |---O | | O | | |...

Avatar_small

一道有难度的极限题

计算: \[ \lim_{n\rightarrow\infty}{\left(1-\frac{1}{1\cdot 2}\right)\left(1-\frac{1}{2\cdot 3}\right)\cdots\left(1-\frac{1}{n(n+1)}\right)} \] Solution: We write $ P=\prod_{n=1}^\i...

Avatar_small

终于研究出了 brainfuck 函数与递归!

在学校闲得无聊,于是研究 brainfuck,没想到居然真的把函数与递归研究出来了! 原理很简单,就是:

Avatar_small

枚举,将粗暴进行到底:Packing Rectangles

Four rectangles are given. Find the smallest enclosing (new) rectangle into which these four may be fitted without overlapping. By smallest rectangle, we mean the one with the smallest...

Avatar_small

递归列出某目录下所有目录

#include <unistd.h> #include <stdio.h> #include <dirent.h> #include <string.h> #include <sys/stat.h> #include <stdlib.h> void printdir(char *dir, int d...

Avatar_small

如何正确加密用户密码

vim 系列很可能要坑掉了。。。Orz 很久很久以前,当人们还没有什么安全概念的时候,密码都是不加密存储。这样显然会带来很严重的问题,当你的服务器受到攻击时,用户的密码有非常非常大的概率会泄露出去,这样会给用户带来很严重的问题(参考csdn事件= =) 后来,大家觉得明文存密码太傻X了(工信部的那群**还没有这么觉得= =),于是要把密码加密,最早用的是对称加密法,就是...