忠忠的新百宝袋

做人要厚道

Archive for April, 2006

scrollling in the sky

Posted by Kai on 30th April 2006

今天晚上去溜冰了,非常休闲。

现在溜冰的技术和以前一样,但是心态平稳了很多,不求快,不求稳,就是轻轻松松的像游泳一样,荡来荡去。很久没有感觉到这么放松的心态了,仿佛鱼游浅底一样,连泡泡都懒得吐了。

吃过了最后的晚餐,明天就得去找个十字架了,七天以后我会复活。在这七天里,我要创造一个世界

Posted in game, personal | No Comments »

预赛完成

Posted by Kai on 28th April 2006

昨天算法比赛的预赛结束了,晚上8:30我们提交了代码。一共八题,我们做了八题。有一题稍有遗憾,我们在昨天下午才感觉没有使用高精度除法可能有不小的误差,于是下午开始由我来写高精度除法的代码,可惜我的算法有漏洞,一直写到晚上提交的时候还存在一种情况没法处理。最后只好提交之前的用double运算的代码。题目要求7位有效数字,我们担心存在最坏情况double的有效位可能达到7位一下。这次比赛我们都投入挺大的,我们就是想把全部的题目都做出来,现在稍有一点遗憾。去年预赛共12题,我们做了9题,对了7题。最终预赛排名第三。今年我们本想拿第一的,现在看来,有一点点危险。

五一渐进,有些焦急。五一之后的比赛不知道能不能及时完成作品,我也很期待啊。

我们会努力的。

Posted in c++, tech | No Comments »

题目做好了

Posted by Kai on 25th April 2006

算法比赛的后三题都做好了,心情特别的好,精神也好了。最后一题的时间不到0.1s,最大数据量测试,不过数据分布可能不是很好。这次做题收获还挺大的,广度搜索我会了同时进行三种不同权值的搜索,深度搜索用数组来优化,复杂度在n。

关于bool和int大树据读取再赋值读取时间测试我刚刚做完,结果是几乎一样。10亿次操作时间bool反而长一些,但不都这样。eclipse编译器用运行遍的话bool快0.2秒大约4.6秒,用vc2005调试模式bool比int慢2.8秒大约6.4秒。short在eclipas中介于bool和int之间,但在vc2005中,short比int要长0.1秒。vc2005 release版本暴强,10亿的三次方次运算所用时都是不到1毫秒,吓死人了。我让bool = !bool , int ++ , short++来运算进行测试。也许vc2005很好的利用了32位机的强势,读取很快。

单纯的赋值操作,在每个编译器下都是很接近的,大约4.1秒左右.如果考虑测量误差,我感觉可以忽略差别了。

看来用bool除了节省空间效率上并没有明显提升,我有理由相信飞哥的观点,bool也是用int来表示的。而且,在vc2005中,我估计由于bool要进行转换,倒是用时比int还长几乎50%.

另外 ,用sizeof()测试,C++里int是4字节,bool是1字节,不是1字位。看来32位机器对32位数据的偏爱是有的,但是能不能利用上,全看编译器了。

刚刚用java实现了一个链表,感觉怪怪的,不用指针竟然也可以做出链表,用引用始终感觉好像有什么地方丢内存了。我现在有理由相信java也可以实现C++里面的各种算法,明天有空我再用java实现一下广度搜索和深度搜索看看。java是.出来的语言,什么都是用点的。

Posted in c++, tech | No Comments »

在执着中变态

Posted by Kai on 25th April 2006

昨天虽然很累,晚上写程序精神还是不错,写到电脑自动休眠才停下来。

尝试继承了一下stl中的模板类,感觉非常棒。stl中常常我记不住类名,最会用的就是stack了。昨天就继承了一下stack<T>,加入了一个clear()函数。今天又想到,用2个stack还可以做出广度搜索来。

昨天做的那题还只是想到了用穷搜,但是一直在想办法降低复杂度。今天上午花了一堂课想把n的平方的系数降到常数,结果中午验证有漏洞,于是我还得穷搜。今天上午想抠门想的连我自己都觉得我变态了。我在想把int型能改成short的都改成short节约内存,但是后来又犹豫我的电脑是32位机,会不会做32位计算比较有效率呢?然后又想用一个很大的bool数组来节省时间,但是苦恼于10万次bool写入和200次整形读取那个比较快。如果bool真的是用1个字位表示的话,按理说可以很快,按时考虑到32位机阿。出来后问飞哥,飞哥说C++里面bool也是用整数表示的。我不很确定他是对的,因为我记得书上讲过bool不是占4个字节。不知道用位操作会不会很快,我感觉不会,因为C++里位操作还要进行布尔运算,并不轻松。windows程序里有一些枚举是用位操作来做的,但是我估计这样做目的是节省空间。因为cpu的口径比内存大的多,消息响应时,信息包越小,响应的越及时。

有空把bool赋值大数据量的实验测一次,和整形的读取赋值比较一下就知道了。

Posted in c++, tech | No Comments »

tired

Posted by Kai on 24th April 2006

近来精神不是很好,感觉好像有些神经衰弱。想问题有些木讷,感觉脑子里面装得是固体,都不会动的。连喝2杯咖啡都没效。今晚写概率作业写的那个痛苦啊,写一题就要在书上翻好久。那么多莫名其妙的公式记不住。算法比赛最后一题还没有开始写,有点头绪也是用穷搜加一点小技巧。今年的比赛赛况很不错的样子,不少队都已经写出5题以上了。松×昨天还想出了高精度除法,实在欣赏他毅力。他的大数相除已经可以做到任意位精度,像methmatic一样。我估计用double型做最后的相除精度已经够了,因为只要求7位有效位,我们只有在最后除的时候丢了精度。前面求积还是用了高精度表示。第四题题目出的含糊不清,有的61系的队就直接用穷搜了,胆量真大啊,如果k可以最大为n的话,估计算上几个星期都出不来结果的。我们因为有大流氓在,用的算法都能严格的证明的。不过退一步,计算机解题并不是一定要严格证明的,有效就是硬道理。

Posted in personal | No Comments »

姐姐请客吃饭,有人夸我英语不错

Posted by Kai on 23rd April 2006

今天姐姐过道南京,顺便请我吃饭。后来才知道,她对我这么好是因为以前我曾经用省下来的零花钱给她买了一个芒果两个猕猴桃。看,小孩子就是这么好收买。早上她说如果我时间紧的话就打车过去,她报销路费。太帅了。对我这么好。现在想想,我小时候还真是可爱啊。看着镜子里的活泼的人,我就想去亲两下。今天上午我本想吃鸭子,但是找了一个店卖的还是袋装的,于是只好去吃烧烤,但是味道很不错。是上次姐姐来南京我们特地在网上找到的一家口碑不错的店,就在东大旁边。今天犯了个错误,三个人坐车的时候我坐前面,于是下车我付钱,姐姐说这样做swam会不高兴的。于是我明白了,下次坐车有人做东就绝对不做在前排,就算坐在前排,也不付钱。

姐姐请客,买单的是她的同事,一个danishion.我不知道丹麦人怎么拼,但是从他的发音估计差不多是这个拼法。他叫swam,唯一会说得中文就是“小姐,买单”。筷子也拿的不错,就是力道还差点儿。今天是我首次在社交场合使用我的英文名Kai,效果还不错。不知道Kai这个单音节词做名字有没有什么特殊的含义,当我告诉他我是Kai时,他顿了一下才和我握手。我发现欧洲人比中国人会模仿,他在饭店看到别人干了傻事就模仿给我们看,很像,he is good at it。他说他对中国不了解,有次以为到了宁波马上就可以去广东玩了,结果发现坐飞机就要2个小时,虽然地图上只有那么两个小点点。我对欧洲的了解比他对中国的了解还差,于是他就给我讲德国,英国和丹麦的位置关系。他还说,来中国这么久,连一碗白米饭都没有吃过,光吃菜了。

最后走的时候,swam说我英文不错。呵呵,我的语法错误犯了不少,代词也用错了好几处,但是在社交场合根本没有任何影响,我的话他都听得很清楚。他的话我听得有点含糊,不过基本都懂,有不会的单词就问我姐姐。有个“meeting”我听了2遍没听出来,他的发音和我们课本上学的不一样,他发/’mi:tri:n/,后来是问我姐姐才知道,丹麦腔。我告诉他我正在进行游戏编程,他说那行业很有钱途。hoho~~

Posted in personal | No Comments »

第三界逻辑算法大赛开始

Posted by Kai on 22nd April 2006

昨天领到题目了,共8题。准确说,这次的题目有点不正规,描述的不够详细。但是难度比上一界大。我们分了工,我做后3题。

昨天晚上用了2个多小时调eclipse编译器,最后结论是,新版本对cdt支持不好。于是大家都用老板本。其实我感觉如果微软肯赞助acm/icpc的话,加上微软又把vc++2005Express做成免费的了,icpc完全可能用vc++2005Express来做正规比赛的编译器。但是现在,只有ibm一家赞助icpc,acm也只好用ibm的开源编译器,也就是现在的eclipse了。eclipse虽然挺好,但是调试方面,我们大部分同学还是习惯用vc。而且eclipse小毛病很多。比如当前有关闭这的项目的时候重新建一个项目编译就会不正常。非要重启eclipse才行。而且,vc的快捷键很好用,eclipse的就用着不那么爽快。不可原谅的是,eclipse还不支持拖拽。不可否认,eclipse也有它的优点,比如行号显示,比如uml支持,比如漂亮的console界面,而且eclipse的console是可以用鼠标直接复制的。总之一句话,我喜欢用vc。

从昨天晚上到现在只做出了一题,还没法用变态数据来验证。用了一个自己遍的数据来验证,结果验证花了我接近1个小时,我的程序没问题,但是我想不到那条路径,所以我的笔算结果始终和程序的结果不同。估计这题应该没有问题了。

去年我们队预赛得到第三,决赛只拿到第五,今年我们希望决赛能进三甲。明年估计就是我来操办了,今年也是我最后一次参加系里的比赛了。我感觉我们计算机系最重视的就是这个比赛了,全班36个人有一半以上参赛。今年的比赛比去年激烈,题目难了,对手也多了,而且今年的大部分参赛队伍是计算机系大二的学生,这一届计算机系大二比上一界厉害多了。哈哈,其他系的可危险了。

Posted in c++, tech | No Comments »

性交易该不该合法化

Posted by Kai on 20th April 2006

今天生命科学导论课上,老师安排大家讨论国家该不该投资来防治艾滋病以及如何投资。我想起来以前听过的一个观点,于是第一个发言。

因为性交易是艾滋病传染的最大的途径,所以如果国家对这个途径加以监控就能有效地避免艾滋病的传染。也就是说,性交易要合法化,由国家制定相应的规章制度,并且提供安全保障比如定期的健康检查来保障消费者的人身安全。这个可以不是长久之计,但是在现在中国的社会文明和警察力量还没有达到能完全禁止性交易的情况下,用国家的力量来规范这个行业逐渐缩小开放程度最终达到目标不失为可行的方式。人类社会自从诞生以来只有2个行业从开始到现在都存在,那就是卖淫者和牧师。也就是说,禁止性交易是非常困难的。我感觉众人对性交易的厌恶情感有很大程度来自孔老先生的影响。如果秦始皇没有独尊儒术,我认为我国就可能不会禁止卖淫了。而儒术只是众多学术中的一个,他在封建制度下利于统治阶级但是并不最适合社会发展。况且我国在封建朝代并没有禁止性交易。很多名留千古的大家都是花柳巷的常客,比如唐伯虎,杜牧。但是古代的妓女比现在的妓女有身价,因为国家没有命令禁止还有,她们琴棋书画样样精通。

那么国人厌恶性交易和孔先生有什么关系呢?高中时就学过,儒家关怀只关心己岸世界,不关心彼岸。性交易者的回报超过了普通劳动所得。这使得有人就嫉妒了。考虑到自己的利益,同时感性的儒家思想的教导,于是国人就对性交易者有了厌恶之情。这就是为什么大家会讨厌妓女而不讨厌嫖娼者的原因。嫖娼者花钱,没什么好眼红的,人家命好;嫖娼者大把大把的赚钱,这就让某些人很不爽。All big disicions are personal. 儒家文化的特点就是太个人化 , 会用个人情感左右逻辑思考。所有的措施都是为了一部分人的利益,所以我怀疑孔先生的言论是不是真的从国家从民族的角度出发。

我比较推举法家思想。如果卖淫嫖娼一旦抓住就枪毙的话,性交易早在建国时就断了。也没有现在这么多的艾滋。我觉得用妇女保护作为禁止的借口已经没有说服力了,因为不只有女性涉足这个行业。用一句很现实的话说,大家工作都是为了改善生活,不偷不抢有什么不对。当然,禁止性交易还有一些生殖学意义上的利益(引自罗宾。贝克《精子战争》),但是利益与损失是相对的,有些人获益的同时必定要有人受损,这是任何时代都不可避免的。比较让性交易处于混乱状态而言,国家监管会更有利于大众。我这样说并不是我赞成性交易,只是我不仇视它,我给它和千千万万从业者生存的空间。毕竟我们还没有能力完全禁止它,我们还没有能力照顾好千千万万的从业者。某种意义上说,他们(她们)也是为了生存。性交易非法化只会让从业者能被“正当”侵害。他们(她们)也是中国公民,应该被宪法保护。如果秦始皇当初采纳了韩非子的思想,估计中国1000年前就独霸全球了。也就没有了近代的屈辱和现在日本的做大了。

如果从道德角度来看的话,所谓道德也不过是儒家思想不严格的产物,本质上道德也不过是为了一部分人的利益。当然,很多约束都是为了一部分人的利益,关键那一部分人是统治者还是被统治者。

所以,我相信性交易合法化会大大降低我国的艾滋病传染率。非洲就是个很好的例子,非洲的国家已经没有能力规范卖淫了,所以艾滋病横行。如果非洲早在卖淫兴起的初期就规范这个行业,非洲人民也不会像现在这么惨。性交易和毒品交易不同,毒品会损害消费者的健康,国家必须加以制止,但是性交易和工厂雇佣一样,生产出的都是无害的产品。可能性交易不是每个人都消费得起的,但是这很正常,社会本来就不是绝对公平的,劳斯莱斯就不是每个人都买得起的,或者说是大部分人买不起的,摸一下都别想。

我说完之后,有个同学反驳我。我的同学认为禁止卖淫是国策,不能变。我当时就有听到“两个凡是”的感觉。二战之后世界上有个观点,那就是“跪着的德国总理比站着的日本首相要高大”。人类发展本来就是在摸索中前进的,走一点弯路才是正常的。

我所说的性交易合法化通俗的讲,是性交易非罪化。合法化不是简单的一纸公文,它要求更多的国家的参与和配套法律的制定。否则只会使得混乱的局面更加混乱。

Posted in society | No Comments »

puc the Pirate, 我见过的第一个Managed DirectX 游戏

Posted by Kai on 19th April 2006

今天去了Digipen的网站下载到了puc the Pirate的程序和源代码。程序虽然比不上大游戏,但是作为一个教学示例游戏,做的还是非常棒的。特别是当我转动视角的时候,哇,感觉太棒了。

希望到时候我们也能做出这种样子的东西。三维的场景最激动人心的大概就是可以转动的视角了。puc the Pirate是c#做的,看的出来第一次运行的时候还是很慢的。没办法,IL机制的弊端。

今天在网上还下载到了一些游戏引擎,我想如果为了追求数量的话,用用也是挺好的。毕竟,像web2.0兴起一样,当创意超过技术成为取胜的关键时,大众的积极性就被调动起来了。

Posted in C sharp, Graphics, tech | No Comments »

组合数学有市场

Posted by Kai on 18th April 2006

今天上了组合数学的第一堂课,看出来同学们学组合数学很有热情,课堂气氛很热烈。换句话说,吓死人了。我上大学2年来,还没见过全班的人积极主动地参与课堂讨论的景观。那个壮观啊,实乃大学之罕见。

对于我们计算机系,组合数学的确有本质上的吸引力。问题都是很好玩的,我感觉计算机系的系文化就是喜欢玩。什么好玩我们就玩什么。也只有计算机系会把学东西当作玩吧。我们系有玩的基础,超过90%的电脑拥有率,实在没有办法不玩啊。

Posted in personal | No Comments »

 
FireStats icon Powered by FireStats