Show newer

大学ppt警告 

我他妈直接就破防了,我都在学你妈什么玩意儿

短视频把这届观众给害了


QT: [9kb.me/@chouti/106112066652502]
抽屉新热榜  

【被这届观众“嫌弃”的《指环王》】在2004年内地上映时,三部《指环王》连映是不少影院的卖点。媒体曾经联合影院和电影公司举办“《指环王》连映超级耐力挑战赛”,有125名选手参与了长达9小时的马拉松观影,最终有一半以上的人留在了结束一刻。
dig.chouti.com/link/30772313

今天刷课坐在宿舍里抱着饮水机喝水喝到肚子胀。
感觉今天的我也快是水做的了。

责任感,担当感,对不公义的抵抗,对弱势人群的照顾,这™才叫阳刚之气!
天天逃课打架混社会那帮人,但他们那叫有阳刚之气吗?

bilibili.com/video/BV1ZX4y1u7e - 4:27

女装警告 

豁出去了,我顶不住了
(别找我要照,肥还没减下去,肥减了自然会发)
首先是小钢筋,想试试一直把嘴占着,就不会买其他零食了吧。
其次是女装,照着长袖连衣裙搜的,只是觉得,把身子都裹起来,世界与我无瓜。

二义性的实例:if expr then if expr then others else if expr then others else others

Show thread

代码:

# S -> iS | M
# M -> iMeS | O
# -----
# S = statement, M = matched_statement, O = other
# i = if, e = else
import copy

class Obj:
    def __init__(self, init):
        self.value = init
        self.path = []

        self.path.append(init)

    def push(self, ns):
        self.value = ns
        self.path.append(ns)

    def __repr__(self):
        return self.value

    def __hash__(self):
        return hash(self.value)

    def __eq__(self, other):
        return self.value == other.value

cur = [Obj('S')]
nxt = []
ahs = set() # all history
ahl = []

assert(Obj('SS') == Obj('SS'))
assert(Obj('SS') != Obj('SSb'))

def cfind(s : str):
    spos = s.find('S')
    mpos = s.find('M')

    if spos == -1 and mpos == -1:
        return 'O'

    if spos == -1:
        return 'M'
    if mpos == -1:
        return 'S'

    if spos < mpos:
        return 'S'
    else:
        return 'M'

for i in range(100):
    for mem in cur:
        svar = cfind(mem.value)
        if svar == 'S':
            # 1
            prod1 = copy.deepcopy(mem)
            prod1.push(prod1.value.replace('S', 'iS', 1))
            nxt.append(prod1)
            # 2
            prod2 = copy.deepcopy(mem)
            prod2.push(prod2.value.replace('S', 'M', 1))
            nxt.append(prod2)
        elif svar == 'M':
            # 1
            prod1 = copy.deepcopy(mem)
            prod1.push(prod1.value.replace('M', 'iMeS', 1))
            nxt.append(prod1)
            # 2
            prod2 = copy.deepcopy(mem)
            prod2.push(prod2.value.replace('M', 'O', 1))
            nxt.append(prod2)

    ahl.extend(nxt)
    for nmem in nxt:
        if nmem in ahs:
            print(nmem.path)
            for s in ahl:
                if s == nmem:
                    print(s.path)
        ahs.add(nmem)
        

    print(i+1)
    input('next>')
    cur = nxt
    nxt = []

Show thread

你看这个代码它又长又宽,你看这个文法他二不二义?

这课上完就是人肉lex+yacc了,而且请假就扣总分,真“好”。

暴躁警告 

天杀的老师,天杀的题
2.13 为下列正规式构造最小DFA
(3) (a|b)*a(a|b)(a|b)(a|b)
正则转DFA结果:

digraph{
    A -> B [label="a"]
    A -> C [label="b"]
    B -> D [label="a"]
    B -> E [label="b"]
    C -> B [label="a"]
    C -> C [label="b"]
    D -> F [label="a"]
    D -> G [label="b"]
    E -> H [label="a"]
    E -> I [label="b"]
    F -> J [label="a"]
    F -> K [label="b"]
    G -> L [label="a"]
    G -> M [label="b"]
    H -> N [label="a"]
    H -> O [label="b"]
    I -> P [label="a"]
    I -> Q [label="b"]
    J -> J [label="a"]
    J -> K [label="b"]
    K -> L [label="a"]
    K -> M [label="b"]
    L -> N [label="a"]
    L -> O [label="b"]
    M -> P [label="a"]
    M -> Q [label="b"]
    N -> F [label="a"]
    N -> G [label="b"]
    O -> H [label="a"]
    O -> I [label="b"]
    P -> D [label="a"]
    P -> E [label="b"]
    Q -> B [label="a"]
    Q -> C [label="b"]
}

Plan9 的 libc 着实让我眼前一亮
来自 sys/src/libc/9sys/abort.c

#include <u.h>
#include <libc.h>
void
abort(void)
{
	while(*(int*)0)
		;
}

Show older
小森林

每个人都有属于自己的一片森林,也许我们从来不曾走过,但它一直在那里,总会在那里。迷失的人迷失了,相逢的人会再相逢。愿这里,成为属于你的小森林。