• Epigrams on Programming

    Author:Alan J. Perlis, Yale, September 1980


  • 普通生成函数

    普通生成函数是让一个序列(可以是有限序列,可以是无限序列)的第 $i$ 项 $a_i(i\ge0)$ 作为 $x^i$ 的系数。
    序列 $[2,3,4,5]$ 用生成函数表达就是 $2+3x+4x^2+5x^3$。
    序列 $[1,3,5,7,\ldots]$ 用生成函数表达就是 $\sum\limits_ {i=0}^\infty(2i+1)x^i$。


  • 环形染色问题

    一个大小为 $n$ 的圆环(环上的点有编号)需要用 $m$ 种颜色进行染色(每种颜色不必全都使用),要求相邻两个点的的颜色不同,有多少种染色方案?


  • 错排

    定义

    错排,也就是全错的排列,即长度为 $n$ 的排列满足 $\forall i,a_i\ne i$ 的方案数。
    一般采用 $d_n$ 表示错排。


  • 对二项式定理求导

    \[\begin{aligned} (x+1)^n&=\sum_{i=0}^n\binom nix^i\\ ((x+1)^n)'&=(\sum_{i=0}^n\binom nix^i)'\\ n(x+1)^{n-1}&=\sum_{i=0}^n\binom niix^{i-1}\\ 2^{n-1}n&=\sum_{i=0}^ni\binom ni \end{aligned}\]
  • 关于语法糖

    语法糖是指在编程语言中,采用简洁的方式来表示复杂的过程。使用语法糖可以减少代码长度,降低理解难度。例如,重载运算符和模板都是经典的语法糖。然而,尽管可以采用 C 风格的强制类型转换 int(x),C++ 还是提出了效果相同但名字更长的 static_cast<int>(x),这种情况被称为语法盐。其目的在于规避不安全的隐式转换。


  • 化學元素中文名稱原義

    如果釋義只有孤零零一個化學元素,那就表示這個字是新造的,否則表示本身是這個字或者舊字新用。


  • 序列计数

    给定 $n(n\le10^6)$,对于 $[0,n]$ 中的每一个 $k$,求出有多少个长度为 $n$ 的 $01$ 串,其中最长 $1$ 连续段长度恰好为 $k$。


  • 不仅仅 STL——C++ 库详细介绍

    STL

    标准模板库,即标准模板库。虽然一般说起来 STL 只能想起 vector 之类的,但是 STL 实际上包括了容器(和容器适配器)、算法、迭代器、仿函数、内存分配器五个。


  • Electron 软件简单修改——去除全屏化

    最近在上网课,软件(有道领世)一打开就直接全屏化了,右上角只有最小化和关闭两个按钮,非常不方便,决定想个办法去除全屏化。