大兵 ver 22.4.3 build 2008

Tiger Soldier 发表于 2009-01-01 22:05:58

大兵 build 2008 更新列表一览(不完全统计)

新增特性:

-旅游 v2.0

本来想作为v1.1的,最后还是改成了v2.0。
最重大的改进就是,终于出了国,坐过飞机。人生的经历又多了两项,见识了很多原本不知道的东西:护照、签证、与外国人交流……感觉自己的眼界又开阔了一步。不过说真的,我还是不喜欢旅游,麻烦。
另外的小修补:国内去过的地方增加杭州和东莞两项。终于知道饭堂的小笼包有多山寨了。

-实习 v0.5
实习,本年度最期待的事情之一。传说中的Google,免费食堂与零食,宽松自由的工作环境,20%的个人项目时间……能来到Google实习,我很幸运,也喜欢上了它的氛围。希望build 2009能让实习良好地升级到v1.0。

-保研 v1.0
犹豫了很久是否要开发这个过渡特性。本来一直很坚决地要开发此特性的,后来形势的变化一度让我想放弃而直接开发这个过渡特性的目标:工作v1.0。权衡再三,还是开发了这个特性,也歪打正着避开了金融危机这一影响工作v1.0开发的病毒。

-Linux v0.5
偶然开发出来的东西,至今未能升级到v1.0。开发的初衷是为了在Windows这个特性外兼容更多的东西,开阔自己的眼界。开发出这个特性后发现比Windows更好用,只是由于自己太懒,还是只停留在v0.5上。

-Notebook v1.0
同样不在此build的计划内,纯粹为了方便实习和回家使用而开发,但是至今没发现在实习上派上什么用场,效果考查中……

升级特性:

-竞赛 v1.5
省赛的失利差点让我觉得原有的v1.0也要打回重练,好在4+2前4天大爆发,居然让版本号升至v1.1。
做梦般地进入了三队,虽然我觉得自己没有那个实力。托两位强大的队友的福,尝到了金牌的滋味。可惜我太菜,不然我们Uriel能走得更远。
Build 2009里能否将它升级到2.0呢?

-知识库 v22
完成了大三的学习,了解 了设计模式,玩了会Ajax,光看不练地学了Python,稍微看了看Ruby,似乎没多大更新。
值得一提的是编译原理得了个圆满,这门课确实还挺好玩的。

未完成特性:
-在线漫画下载器
一直想用Python写一个给自己用用,因为MangaDown在Linux下Wine出来始终乱码。不过说归说,做归做,已经不记得什么时候计划的了,到现在还是一行代码没敲过,可悲啊。

-读书学习
黑书、算法导论、数论基础、图论导引……多少本书一直说自己要看却没有看。虽然早知道自己懒惰,但是还是不得不叹一声,这样下去是不能有明显的性能提升的。

-切题
不说了,导致竞赛没能升级成v2.0的直接原因之一。

-小故事
本来答应了sa至少给我那小故事升级0.1的,可惜太懒了没能code完,而且code到一半的代码还留在广州无法提交。来看继续吧。

-Digimon Tamers
完全停滞了,本来至少还能升级到v13的,结果还卡在我这里,随着小肥上高三至少还得卡上半年。七月再说吧=w=。

特别特性:
-mm v-48.0
大学三年,版本号起起伏伏,代码两次推倒重炼,到build 2008完成时终于定格在-48这个版本号上。希望接下来的日子里,每年版本号都能顺利+1,直到变成正数^_^。

Build 2009 TODO list:
依旧没有明确的TODO事项,毕竟计划赶不上变化嘛:-)

另送彩蛋一只:新年快乐!
关键词(Tag): 新年 2008 2009

怀旧

Tiger Soldier 发表于 2008-12-16 22:38:33

突发奇想翻了翻以前QQ空间里写的日志,发现挺好玩的,看到以前写的东西,突然想起来:“哦,原来我还这样过……”如果说日志里的东西自己多少还记得,那么看到下面的评论的时候就新鲜了。虽然是看过的评论,可是早就不记得了,现在看起来就像看新的一样。

说起来以前还真的写了不少东西,虽然很多是一些小事,只有几句话,但是事后再看却颇有滋味。只是我现在懒了,Blog也好久没更新了。一直想写在Google里的一些事,却老是不愿动手,现在想写的也忘得差不多了。

或许我该重新开始写点东西,或多或少,或长或短,把现在的生活刻录下来,留给以后看。
关键词(Tag): 日志 qq空间

杭州总结

Tiger Soldier 发表于 2008-12-04 20:38:08

2008,杭州,如果用一个字总结这场比赛,那就是──水。我水掉了,害得我们整个ZSU_Uriel都水掉了。
水掉从试机的时候就开始了。试机时Shoit做A,db做C,他们做完后我做B,很明显的欧拉回路,我愣是给转化成了哈密尔顿。好吧,规模小,哈就哈了,反正规模小。在Shoit gg的提点下用next_permutation来做,结果想了个脑残的算法来实现。WA后还打印出来刚看出错在哪db就已经完成重code工作把这题AC了。
正式比赛时状态依然没啥好转,db一开始就上了J。过了若干分钟后我们发现A有几支队过,于是我和Shoit读题发现n很小,可以直接暴力。db提交J WA了,在下来后由shoit上去敲A。两人换机若干次后分别将题过了。之后db说H他做过,便上去做了。之后过G的队也多了起来,我在推样例的时候想到了算法,才发现原来是一题水题。由于被雅加达和试机弄得对自己的coding能力没有信心,便再次劳烦shoit gg上去code,虽然题是过了,却浪费了shoit gg这一强大的战斗力。
终于db过了当时并不是很多队过的H,Shoit也切掉了G,这时我们4题,而楼教主他们已经6、7题这样了。差距虽然大,但是也给我们跟风提供了方向。db很华丽地想出了C的做法,但是由于要高精度开方,Shoit写了个Java的原型程序,担心Java高精度操作超时而没敢做。噩梦的开始是我的F。一开始我想了个n^2logn的算法,shoit认为可以一试。由于当时他们两个在合力攻C,我便自己上去敲了起来,之后很华丽地TLE了……Shoit在放弃C后也加入到想G的行列来,不久提出二分半径再枚举起始点的方法,仍然由我从原来的程序上改。改到一半发现不具有单调性,不可以二分。我受这个算法的启发,想到将二分半径改为枚举半径,复杂度变成n^2。当时觉得能过了,没想到改完后还是TLE……优化了几个地方还是不过,也没有死循环。就在我快要崩溃的时候,db提示生成个大数据测速度,测了之后发现计算角度实在是太慢了。下来想了一下,发现原来自己傻掉了,可以用O(n)的方法预处理角度,之前一直觉得必须O(n^2)……由于当时大脑已经乱到无可救药的地步,只能拜托db上去改了。改了之后终于领到了第一个WA,然而在剩下的半个小时里我们始终没能把程序debug成AC,最终以4题收场。
雅加达和杭州,都是我最后做的F,最后都没过,而杭州我更是以0 AC的“成绩”给我2008年的比赛交上了答卷。这场比赛我彻底成为了打酱油的人物,如果只有Shoit和db两个人,说不定成绩会更好,他们过了4题之后,不会因为我而浪费那一个半小时,再出个一两题绝对是可以的。至少,成绩不会更差。
入队第二年,很庆幸郭老师看得起我,将我放入了三队,这让我有成长了许多:有Shoit和db这两位强大的队友,他们让我学会了很多原来不懂的东西;人生第一次出国、第一次做飞机、第一次拿到出线权……可惜我没辜负了郭老师的提拔,也没能让Shoit的最后一战华丽收场。

其他琐碎事:
1、大傻的暴走光环在杭州得到了充分地验证,我们在杭州成功地从第一天锻炼到了最后一天
2、大傻是个好领队,至少在吃饭的时候是的
3、游完西湖后的晚餐可以用一个“狼”字形容,尤其是上脆皮鸡的时候,不到一分钟转盘转了两圈就没了。之所以转了两圈是因为第一圈太快了很多人没夹到-_-
4、出于对我们优秀领队大傻的敬意,回程时玩杀人的前几局都没让他活到第二回合
5、不明真相的LCH在火车上的便衣警察面前大玩骗术,不,魔术。下车知道后出了一身冷汗
6、………………
关键词(Tag): acm 杭州

流水账之二

Tiger Soldier 发表于 2008-11-06 01:27:08

其实有好多东西没写……按时间顺序逆序排列好了

今天去给老姐送行。来了广州6年,最终还是选择了回家。多少有些感叹吧,若干年之后,我也要离开广州,却不是回家,而是到另外一个城市。广州这个对我来说既熟悉又陌生的城市,在我的生命中意义何在?

昨天和他们打乒乓,单打没赢一局,好在双打还是把糖水给拿下了,嘿嘿

再往前推,上周六,CS版版聚。和上次相比,04级的老人都不在了,不过新面孔倒是不少。第一次玩了杀人,三局都是平民。后两句比较有意思,都是速战速决。第二局杀手把警察给全害死了,第三局警察完胜。

貌似写不出啥……还是睡觉好了……

雅加达总结

Tiger Soldier 发表于 2008-10-25 21:04:55

出行
由于是19号上午9点香港的飞机,所以我们18号就得出发去香港。在出发之前随便参加了杭州网络赛,在最后一刻AC了一题,算是一个好兆头吧。
一路辗转来到雅加达,中间过海关办签证什么的挺麻烦的,不得不感叹一下出个国真麻烦。

试机
20号下午试机时得知比赛没有PE,所有PE都被当作WA返回。比赛环境和Judge机都是XP平台的扣肉机,开发环境是Devcpp/notepad++/eclipse/mingw。问了Judge知道64位整数要用long long和%I64d,和预想的一样。试机题是两道C++习题水平的题目,我们三个人轮流上场,基本每人把每道题目都敲了一遍。Shoit拿其中一题试了Java,db试了long long。试机时发现打印代码时缩进会消失,向judge反映后第二天正式比赛时就没这个问题了。
晚上讨论第二天的对策,结合之前印尼全国赛的题目,我们得出的结论是水题应该不少,尽量争取快出题,1AC。

比赛
比赛时间很早,8点就要开始,所以我们6点多就起了。由于前一天晚上讨论得比较晚,感觉没睡够,到了机房后老打瞌睡><。可能是有些参赛队迟到,最后比赛是8点20开始。
题目分配依然按照我们固有的模式,db看前面,我看中间,shoit看后面。
粗粗看了下题目,发现E题可做。E题是给出若干个区间,然后有Q个查询,查询某一点所属的区间。当时想着用O(logN)或者O(1)的查询,没想到什么比较好写的方法。问了下shoit,shoit看了数据范围后很坚定地说:暴力。于是上去敲了个O(N)查询的超短暴力,过样例提交,WA,心都凉了一截,这么简单的程序居然也能WA。把代码打印后将机子交给shoit敲I。我扫了一遍代码后没发现什么问题,突然想到会不会是PE,因为我想偷懒用了一个以前从没用过的给各CASE之间空出一行的方法。一看真的如此,行末多出了一行,改了之后提交就过了。这时候场上很多队过J,过E的反而不多。
之后shoit和db分别把I和J给过了。db做J的时候shoit想到了G的算法。G题的题意是找出给定字符串中最长的K回文子串的长度,所谓K回文子串就是指改变了不超过K个字符后可以变成回文的子串。做法是O(N^2)的dp,对任意子串所需要改变的字符数可从将它去头去尾后的子串中推出。想到算法后shoit就很坚决地过掉了它。
期间想了一下F,题意是给出一串只有加法和减法的算式,可以任意加括号改变优先级。题目的感觉应该可以做,一个很显然的想法是基于子表达式的集合dp,不过算了下复杂度很大,需要O(N^3*6000^2),集合优化后也复杂度不太好算。shoit认为可以水一下,试了试,结果TLE,于是很果断地先放下了这一题。
在shoit水F的期间db把D的算法给想到了。D题是给出一颗带边权的树,要求从中分出K条不相交的路径,使得路径上的边权总和最大,方法是树形dp,比较繁琐。这时A题有几支队过,于是我去看A。A题是一个密码锁问题,我看了之后发现其实是求完全图上的MST,由于我MST很久没敲了,于是让db先做这题。
这时db的A敲了挺长时间,我看B和C,发现B题是个大水题。db把A敲完后发现不过样例,于是打印代码和shoit讨论。我上去敲了B之后特意试了N=4的数据,没发现问题,结果提交后居然TLE。算法绝对不可能超时的,和shoit讨论之后shoit觉得是我边界没处理好,我试了个数据发现确实是这样,写的时候对自己那套偷懒的处理方式太自信了,而出数据的时候居然长度都出全满的,没发现这个Bug。于是加了几处判断后过了这一题。
不久db把A也过了,这时候比赛过了两个小时,我们过了6题,排名比较靠前。而且剩下的题目已经有db的D在手,我也发现C题是个trie上的dfs,形势不错。同样由于trie写得不熟,把C交给了shoit。于是他们轮流敲C和D,我去重新看已经有两支队过的F。
C和D做得比较曲折,敲得比较久。在封board前db终于AC了D题,我们挤身7题队伍的行列。这时shoit的C,WA了两次,而我则想出了F的O(N^2*6000)的算法,于是db和shoit合力看C的代码,我上机敲F。终于在封board后10分钟,shoit找出了C的bug,华丽地做掉了C,剩下40分钟里还有一道打了一半的F,形势一片大好。
最后的时间我们三个人全力攻F题。我敲好程序调了好一段时间才过样例,觉得没什么问题了,提交后却返回RTE。之后我们就一直在RTE和TLE之间徘徊,一直到比赛结束。

赛后出来问了交大,他们的两支队也是8题,考虑到其他学校如果没有爆RP的话应该无法超过8题,而我们的在罚时上没有优势,所以估计应该是第三,结果果然如此。

纵观这次比赛,我们可以说是很好地发挥了我们的实力,第三的成绩也达到了我们的目标。比赛过程中我觉得最成功的就是我们用机时间分配得很好,基本上没有浪费,这利益于shoit的果断决策。另外就是基本没有卡题,卡的题目基本上是样例,整个过程是比较顺利的。这次印尼的题目相当规范,无论是题目描述还是数据都相当好,而且题目类型比较对我们胃口。要说不足的话,还是我代码能力太差,两题水题都浪费了一次罚时,这是本可避免的;而F是在剩下的时间能做出来的,我没能做到,不然就可以夺冠了。

花絮
1.印尼的货币单位是Rp,于是我们这几天都在不断消耗RP,而且是几万几万地花。
关键词(Tag): acm 雅加达

Ready? Go!

Tiger Soldier 发表于 2008-10-17 11:40:32

哈尔滨站结束后,终于轮到我们了。明天,我就要乘车前往香港,后天,我就要第一次坐上飞机,前往一个从未去过的国度比赛。
按理说应该很兴奋:第一次坐飞机,第一次出国,很新鲜。不过我却很平静,似乎觉得离我还是很遥远。或许只有上了飞机的那一刻,我才会感到:I'm here. I'm ready to go.
出国比赛,说实话,有点惶恐。我一直觉得自己实习不足,怕给队友拖后腿。虽说要努力切题,却还是没有切多少,有点对不起他们。但愿我们能发挥正常,取得好的成绩。
关键词(Tag): acm