周一
1.hit2110 hit2167 两道高精度题目
2.大国崛起试讲。
3.打游戏。
周二
1.数据结构前三章作业+实验验收。
2.C++ primer p52
周三
1.一天的课。每周总有那么一天。
2.C++ Primer p77
3.hit1970 简单高精度除法。
4.数电作业。
周四
1.大国崛起资料总结 未完成。
2.C++ Primer 第三章
3.对付选修课
4.hit1926 chain ac
report(zz from internet)
1..k的环的状态影响到k+1环,但第k+1环并不会影响它以前的环,可以从后向前处理。
假设有一种锁链的描述为:
Ok1=Ok2=Ok3=…=Okn=1 (1≤k1<k2<…<kn≤n),i≠k1、k2、...、kn,则Oi=0。
take(ki)表示取下第ki个环;put(ki)表示套上第ki个环。
于是有:要take(ki)或put(ki),则必先take(ki-2),其中ki-1+1=ki。
则必先put(ki-1),其中ki-1+1<ki。
由上述方法,从kn倒推回去就可以知道每个环是否应在棒上,若当前描述情况与推理所要求相符,则该环可不必处理,否则要对该环进行操作
。倒推时一步到另一步都是必需的关系,当然求出的也就是最少步数。
定义:t[i]表示当编号1..i-1的环不在棒上, 而环i在棒上时,要取下环i所需的最少步数,并且要保证操作后编号1..i-1的环仍不在棒上,显
然有:
t[0]:=0; t[1] := 1;
t[i] := t[i-1](放上第i-1个环)+1+t[i-1](再取下第i-1个环);
即:t[i] := 2t[i-1]+1。
设result为最终所求,有:
result := (1+t[i1-1])+(1+t[i2-1])+…+(1+t[im-1]) (其中第i1、i2、…、im个环均为先前倒推得知要进行操作的环)
因为对环ik操作时,环1..ik-1已满足要求,可直接取下或套上,然后取下环ik-1。(result := result+1+t[ik-1])
需要使用高精度。
周五:
1.数电结课
2.C++ primer第四章
3.hit1135 data bugs ac 简单模拟题。
4.具体数学 备课 4.1--4.3 备课真是件困难的事情。
5.近世代数 半群部分作业 未完成。
周六:
1.C++ Primer 第五章
2.hit1778 ac 并在pku ac 列表观察题。lrj p234 这类的题目要多训练。
3.物理实验报告 done。
4.计算机组成原理作业。
周日
1.省赛。第三名。被女队发飙干掉了,555555....四省赛要好好准备了。