很好的文件名批量替换工具

刚刚发现一个很好的文件名批量替换工具,之前用过一个: http://www.bulkrenameutility.co.uk/Download.php 感觉太繁琐了,很难搞明白里面的意思,不过今天发现的这个: http://www.advancedrenamer.com/download  感觉就很好用了,只一会儿工夫就都搞定了。

我是把一个小游戏所用的素材用Charels全部给保存了,不过文件名有点问题,都带着查询字符串,也不知道Charels里有没有设置可以在保存前就去掉,找了一会没找到,但是用这工具能很快把这些字符串全部去掉,只要写一个简单的与正则表达式就可以了,并且可以在列表中看到替换后的文件名。

r

为了性能,请用Canvas而不是IMG

前些日子做了一个网站,是自适应式的网站(也有人叫响应式),带视差效果,大量的使用图片,并且我们做的网站一般考虑屏幕大小达到1920,以保证大屏浏览者依然能够看到清晰的图片。

于是问题就来了,自适应暂不说,只说这视差效果,要求在滚动页面时,页面里面绝大多数的图片能有一个位移或者旋转这样的动画,意味着要想浏览器达到60帧的帧频,程序必须质量够高,浏览器渲染页面的性能也要够高。

几个浏览器下测试做出来的页面,出人意料,一直认为性能最高的Chrome出现了问题,在滚动页面时帧频降到了10FPS以下,反而IE9+的性能相当高,尤其是IE10,非常流畅。问题出在了哪?在经过反复的测试后,终于发现Chrome下性能低的原因。

下面是在Chrome的调试工具里的看到了,很明显在我滚动页面时,IMG标签被多次解码,而这对性能的影响是非常明显的,尤其是页面中存在大量大尺寸图片时。

chrome devtools

 

在我使用了Canvas代替了IMG之后,这种图片重复解码的问题就不存在了,而且性能提升非常明显,基本上能达到最大帧频。不过IE下Canvas似乎难以做自动等比缩放,所以IE下我继续使用IMG,正好IE下图片不存在这样的问题。

 

避免网页中直接使用IMG标签

为什么要在网页中避免网页中直接使用IMG标签?我总结一下有以下几个原因:

1、无法控制图片加载的时间,比如我做一个有大量图片的网站,而网站中的图片可能还有CSS动画什么的,我们需要像以往Flash网站一样的加载进度条,在所有图片加载完后才能正常让网页动起来。如果不是这样,可能动画就达不到预期的效果,像CSS动画有可能就会出现衔接的问题,因为浏览器是在某图片加载完后对它做动画,而并不是在所有图片加载完后做动画,这就会导致动画不同步的问题。

2、无法在某些时候换用其他的显示图片的方式,比如有时我们想用前景的方式显示图片,有时我们想用Canvas的方式显示图片,如果写死用IMG标签,那会导致这样的功能就难以实现了。

3、这个问题跟第一个问题有几分相似,如今很多网站已经采用自适应(响应式)的设计,对于这种设计,会出现某些资源在某些设备上并不想显示,不仅是不想显示,甚至是不能加载,想象一下DESKTOP下的页面用的大图我们万一用手机访问,这张图依然被加载,那轻则网页打开缓慢,重则浏览器崩溃,万一浏览者不是用的WIFI,那。。。他死定了。但是正如第一点所说,没办法直接控制IMG标签,当然有人可能会说了,我用JS来判断,然后用JS来插入这些图片进页面不也可以么,嗯。。。是可以,不过你可以试试看,看这种写法会浪费你多少时间,万一要后期要修改呢?不仅这种方式不直观,而且还会浪费大量的时间。

4、性能问题,某些浏览器(比如Chrome)对于图片处理或许会存在一定的性能问题,在滚动页面或者重新渲染页面时,某些图片会存在即时解码的问题,也就是即便之前已经解码了也渲染了,当页面有改动或者滚动需要重新渲染时,这张图片会被重新解码,之后是RESIZE,之后再显示,如果对页面性能要求高,比如在做动画时,那这是致命的性能问题。

好吧,暂时我也就发现这多问题了,那么解决方法是什么?这是我现在常用的方法:

1、使用DIV来代替图片,比如我们可以这样写:<div class=”picture” data-src=”a.jpg”></div>。这里我们使用一个固定的Class名称来代表这是一张图片,之后使用HTML的DATASET,设置一个自定义的属性data-src来指明图片的路径。

2、使用JS来获取页面中的带picture标签的DIV,之后加载相应的图片,然后可以在这些图片都加载完后插入到相应的DIV中,之后显示页面。这样可以灵活解决图片加载的问题。

3、对于上面据说的可能像Chrome这样的浏览器存在的性能问题,我们可以使用Canvas来代替IMG标签,这样性能问题也解决了。

[转]Windows Plesk I cannot connect to the MySQL database as root/admin

Windows Plesk I cannot connect to the MySQL database as root/admin
Solution Regretfully, MySQL is pre-installed by Plesk without the old-passwords functionality set true.

But the Plesk installer populates the admin user with a password encrypted in the old style!

To fix this you will need to enter your server with Remote Desktop and edit the follwoing file:

C:\SWSoft\Plesk\Databases\MySQL\Data\my.ini

There is a section in that file [mysqld]

Under the line starting “[mysqld]” add the following line:

old_passwords=1

so it looks like this:

[mysqld]
old_passwords=1

Now restart the MySQL service in the services manager.

You should now be able to manage MySQL with the user “admin” and the password is the same as your Plesk login. In some cases the password may still be set to the original password which is “setup”.

If you still cannot log into the MySQL server then you will need to start the MySQL server with skip-grant-tables enabled.

Stop the MySQL service in the services manager.

Edit the my.ini file:

C:\SWSoft\Plesk\Databases\MySQL\Data\my.ini

Add “skip-grant-tables” to the [mysqld] section like so:

[mysqld]
old_passwords=1
skip-grant-tables

Now restart the MySQL service.

Now log into MySQL with the following command:

C:\SWSoft\Plesk\Databases\MySQL\bin\mysql “mysql”

At the MySQL prompt set the admin password:

mysql> select mysql
mysql> update user set password=password(‘new_password’) where user=’admin’;

Where “new_password” is the password of the PLESK admin login.

type “exit” at the MySQL prompt and then edit the my.ini file again and remove the line: skip-grant-tables

Now restart the MySQL service.

Your MySQL admin password has now been re-set.

[转]10道变态的逻辑题

1. 给一个瞎子52张扑克牌,并告诉他里面恰好有10张牌是正面朝上的。要求这个瞎子把牌分成两堆,使得每堆牌里正面朝上的牌的张数一样多。瞎子应该怎么做?

2. 如何用一枚硬币等概率地产生一个1到3之间的随机整数?如果这枚硬币是不公正的呢?

3. 30枚面值不全相同的硬币摆成一排,甲、乙两个人轮流选择这排硬币的其中一端,并取走最外边的那枚硬币。如果你先取硬币,能保证得到的钱不会比对手少吗?

4. 一个环形轨道上有n个加油站,所有加油站的油量总和正好够车跑一圈。证明,总能找到其中一个加油站,使得初始时油箱为空的汽车从这里出发,能够顺利环行一圈回到起点。

5. 初始时,两个口袋里各有一个球。把后面的n-2个球依次放入口袋,放进哪个口袋其概率与各口袋已有的球数成正比。这样下来,球数较少的那个口袋平均期望有多少个球?

6. 考虑一个n*n的棋盘,把有公共边的两个格子叫做相邻的格子。初始时,有些格子里有病毒。每一秒钟后,只要一个格子至少有两个相邻格子染上了病毒,那么他自己也会被感染。为了让所有的格子都被感染,初始时最少需要有几个带病毒的格子?给出一种方案并证明最优性。

7. 在一个m*n的棋盘上,有k个格子里放有棋子。是否总能对所有棋子进行红蓝二染色,使得每行每列的红色棋子和蓝色棋子最多差一个?

8. 任意给一个8*8的01矩阵,你每次只能选一个3*3或者4*4的子矩阵并把里面的元素全部取反。是否总有办法把矩阵里的所有数全部变为1?

9. 五个洞排成一排,其中一个洞里藏有一只狐狸。每个夜晚,狐狸都会跳到一个相邻的洞里;每个白天,你都只允许检查其中一个洞。怎样才能保证狐狸最终会被抓住?

10. 一个经典老题是说,把一个3*3*3的立方体切成27个单位立方体,若每一刀切完后都允许重新摆放各个小块的位置,最少可以用几刀?答案仍然是6刀,因为正中间那个单位立方体的6个面都是后来才切出来的,因此怎么也需要6刀。考虑这个问题:若把一个n*n*n的立方体切成一个个单位立方体,最少需要几刀?

 

 

 

 

 

 

 

 

 

 
答案:

  1. 把扑克牌分成两堆,一堆10张,一堆42张。然后,把小的那一堆里的所有牌全部翻过来。
  2. 如果是公正的硬币,则投掷两次,“正反”为1,“反正”为2,“正正”为3,“反反”重来。
    如果是不公正的硬币,注意到出现“正反”和“反正”的概率一样,因此令“正反反正”、“反正正反”、“正反正反”分别为1、2、3,其余情况重来。另一种更妙的办法是,投掷三次硬币,“正反反”为1,“反正反”为2,“反反正”为3,其余情况重来。
  3. 先取者可以让自己总是取奇数位置上的硬币或者总是取偶数位置上的硬币。数一数是奇数位置上的面值总和多还是偶数位置上的面值总和多,然后总是取这些位置上的硬币就可以了。
  4. 总存在一个加油站,仅用它的油就足够跑到下一个加油站(否则所有加油站的油量加起来将不够全程)。把下一个加油站的所有油都提前搬到这个加油站来,并把油已被搬走的加油站无视掉。在剩下的加油站中继续寻找油量足以到达下个加油站的地方,不断合并加油站,直到只剩一个加油站为止。显然从这里出发就能顺利跑完全程。
    另一种证明方法:先让汽车油箱里装好足够多的油,随便从哪个加油站出发试跑一圈。车每到一个加油站时,记录此时油箱里剩下的油量,然后把那个加油站的油全部装上。试跑完一圈后,检查刚才路上到哪个加油站时剩的油量最少,那么空着油箱从那里出发显然一定能跑完全程。
  5. 先考虑一个看似无关的问题——怎样产生一个1到n的随机排列。首先,在纸上写下数字1;然后,把2写在1的左边或者右边;然后,把3写在最左边,最右边,或者插进1和2之间……总之,把数字i等概率地放进由前面i-1个数产生的(包括最左端和最右端在内的)共i个空位中的一个。这样生成的显然是一个完全随机的排列。
    我们换一个角度来看题目描述的过程:假想用一根绳子把两个球拴在一起,把这根绳子标号为1。接下来,把其中一个小球分裂成两个小球,这两个小球用标号为2的绳子相连。总之,把“放进第i个球”的操作想象成把其中一个球分裂成两个用标有i-1的绳子相连的小球。联想我们前面的讨论,这些绳子的标号事实上是一个随机的全排列,也就是说最开始绳子1的位置最后等可能地出现在每个地方。也就是说,它两边的小球个数(1,n-1)、(2,n-2)、(3,n-3)、……、(n-1,1)这n-1种情况等可能地发生。因此,小袋子里的球数大约为n/4个。准确地说,当n为奇数时,小袋子里的球数为(n+1)/4;当n为偶数时,小袋子里的球数为n^2/(4n-4)。
  6. 至少要n个,比如一条对角线上的n个格子。n个格子也是必需的。当一个新的格子被感染后,全体被感染的格子所组成的图形的周长将减少0个、2个或4个单位(具体减少了多少要看它周围被感染的格子有多少个)。又因为当所有格子都被感染后,图形的周长为4n,因此初始时至少要有n个被感染的格子。
  7. 可以。建一个二分图G(X,Y),其中X有m个顶点代表了棋盘的m个行,Y有n个顶点代表了棋盘的n个列。第i行第j列有棋子就在X(i)和Y(j)之间连一条边。先找出图G里的所有环(由于是二分图,环的长度一定是偶数),把环里的边红蓝交替染色。剩下的没染色的图一定是一些树。对每棵树递归地进行操作:去掉一个叶子节点和对应边,把剩下的树进行合法的红蓝二染色,再把刚才去掉的顶点和边加回去,给这个边适当的颜色以满足要求。
  8. 不能。大矩阵中有36个3*3的小矩阵和25个4*4的小矩阵,因此总共有61种可能的操作。显然,给定一个操作序列,这些操作的先后顺序是无关紧要的;另外,在一个操作序列中使用两种或两种以上相同的操作也是无用的。因此,实质不同的操作序列只有2^61种。但8*8的01矩阵一共有2^64种,因此不是每种情况都有办法达到目的。
  9. 答案:按照2, 3, 4, 2, 3, 4的顺序检查狐狸洞可以保证抓住狐狸。为了说明这个方案是可行的,用集合F表示狐狸可能出现的位置,初始时F = {1, 2, 3, 4, 5}。如果它不在2号洞,则第二天狐狸已经跑到了F = {2, 3, 4, 5}。如果此时它不在3号洞,则第三天狐狸一定跑到了F = {1, 3, 4, 5}。如果此时它不在4号洞,则再过一晚后F = {2, 4}。如果此时它不在2号洞,则再过一天F = {3, 5}。如果此时它不在3号洞,再过一天它就一定跑到4号洞了。
    方案不是唯一的,下面这些方案都是可行的:
    2, 3, 4, 4, 3, 2
    4, 3, 2, 2, 3, 4
    4, 3, 2, 4, 3, 2
  10. 事实上,从一个更强的命题出发反而能使问题变得更简单。对于一个a*b*c的长方体,我们需要f(a)+f(b)+f(c)刀,其中f(x)=⌈log(x)/log(2)⌉。只需要注意到,在整个过程中的任何一步,切完当前最大的块所需要的刀数也就等于整个过程还需要的刀数,因为其它小块需要的刀数都不会超过最大块所需刀数,它们都可以与最大块一道并行处理。这表明,我们的最优决策即是让当前的最大块尽可能的小,也就是说要把当前的最大块尽可能相等地切成两半。利用数学归纳法,我们可以很快得到本段开头的结论。

Ubuntu 下修改 Mysql 默认数据库路径

首先自然要安装好Mysql数据库啦,打开 Terminal 输入下面命令:
sudo apt-get install mysql-server mysql-client

停止当前的 mysql 服务:
sudo stop mysql

将默认的数据目录(/var/lib/mysql) 移至你想要存放的目录路径下,比如我的是 /home/chris/Databases/mysql
mv /var/lib/mysql /home/chris/Databases/mysql

在新目录与旧目录位置建立链接:
sudo ln -s ~/Databases/mysql /var/lib/mysql

不要修改/etc/mysql/my.cnf,之前看某些文章介绍修改这个里的 datadir,但是我试的结果是修改后不能正常启动,看log日志里写着无权限访问这个新的数据目录。

修改apparmor下的关于mysql的安全配置文件:
sudo gksu gedit /etc/apparmor.d/usr.sbin.mysqld

将里面与之前的 /var/lib/mysql 相关的条目复制一份,把路径全部改成新设置的路径,原来的保留,比如我的配置:
/home/chris/Databases/mysql/ r,
/home/chris/Databases/mysql/** rwk,

重启 apparmor:
sudo /etc/init.d/apparmor restart

重启 mysql:
sudo start mysql

现在应该一切正常了。

[转]难死人不偿命!苹果8大笔试题及答案

苹果公司在招聘员工时,会向求职者问一些“可汗学院”(Khan Academy)提出的考验智商的谜题。

你可能没听说过“可汗学院”,但“可汗学院”的谜题被苹果采用一定是有其道理的。可汗学院由孟加拉裔美国人萨尔曼·可汗(Salman Kahan)创立,是一家由谷歌和比尔&梅琳达·盖茨基金会背后支持的教育性非营利组织,主旨在于利用网络影片进行免费授课,目前已经有关于数学、历史、金融、物理、化学、生物、天文学等科目的内容。

苹果在面试过程中随时都有可能向求职者抛出这些考验智商与逻辑的问题,因此如果你向往进入苹果工作,这些艰涩的问题在面试前必须谨慎对待仔细研究,因为苹果的原则是——不能出错,哪怕你已经级别很高,是冲着苹果的高级软件工程师职位而来也不例外。

幸运的是,这些问题虽然刁钻,但却都有唯一的答案,所以你只要有备而来,还是可以应对自如的,下面是 8 个苹果面试过程中求职者可能遇到的问题,以及已经被各路聪明的求职者破解的答案。

问题一:

“你面前有两扇门,其中一扇门内藏着宝藏,但如果你不小心闯入另一扇门,只能痛苦地慢慢死掉……”

这一听就是那种经典的最令人头痛的一类问题,但其实与其他问题相比,这只是个热身。在这两扇门后面,有两个人,这两个人都知道哪扇门后有宝藏,哪扇门擅闯者死,而这两个人呢,一个人只说真话,一个人只说假话。

谁说真话谁说假话?那就要看你有没有智慧自己找出来了,游戏规则是,你只能问这两个人每人一个问题。

那么,你问什么问题?问哪个人?根据他们的回答,你又该怎么做?

求职者的最佳答案:

随便问其中一个人:“如果我问另一个人,他会跟我说哪扇门后是宝藏?

如果你问的恰好是讲真话的那个人,那他指给你的答案就是那扇通向死亡的门,因为他会诚实地告诉你那个说谎的人会怎么说。

如果你问的是那个只说谎话的,你得到的也是错误的答案,因为另一个人是讲真话的,说谎话的人会告诉你与讲真话的人相反的答案。

所以你只要随便问一个人上述问题,然后选择与他们说的相反的门就行了。

问题二:

“你前面站了 5 个人,他们中间只有一个人讲真话……”

这个问题比上个问题难就难在,你只知道他们五个中有一个只讲真话,但其余四个,他们有时候讲真话,有时候讲假话,只有一点可以确定,这四个人将真话和假话有个规律:如果这次讲了真话,下次就会讲假话,如果这次讲假话,下次就讲真话。你的任务是,把五个人中那个只讲真话的人找出来。

你可以问两个问题,两个问题可以向同一个人发问,也可以分别问两个人。

你该问什么问题?

小提示:你可以这样安排两个问题承担的任务:首先你可以先问一个问题,不管得到的答案是什么,你都能从中知道下一个问题你将得到的答案是真是假。

求职者的最佳答案:

随便找一个人,首先问:“你是那个只讲真话的吗?”如果答案是肯定的,你再问这个人:“谁是只讲真话的?”;如果第一个问题你得到的答案是否定的,你就再问对方“谁不是只讲真话的?”

正如这个问题给出的提示,第一个问题的价值在于,如果你得到的答案是“我是”,那么你问的人要么是那个只讲真话的,要么是那个这一轮讲假话的“半真话半假话”者,不管是谁,他下一轮一定会说真话。所以你可以继续问这个人:“谁是只讲真话的?”对方的答案就是正确答案。

如果对第一个问题你得到的答案是“我不是”,那么回答者不可能是只讲真话的那个人,只能是一个此轮讲真话的“半真话半假话”者。此人下一轮将会说假话,所以你应该问他:“谁不是只讲真话的?”同样他告诉你的,只能是那个只讲真话的。

问题三:

“外星人打算将地球用来种蘑菇,并且已经抓了十个人类……”

外星人用这十个人代表地球 60 亿人口,将通过外星人的方式来测试这十个人,决定地球是不是有资格加入跨星际委员会,如果没有,就把地球变成一个蘑菇农场。

明天,这十个人将被关在一间漆黑的屋子里前后排成一队,外星人将给每个人戴一顶帽子,帽子为紫色或者绿色,然后外星人会将灯打开,这十个人每个人都无法看见自己头上的帽子是什么颜色,但可以看见排在你前面的每个人头上帽子的颜色。

帽子的颜色是随机的,可能全是紫的,也可能全是绿的,或者是任意的组合。

外星人会从后往前问每一个人:“你头上的帽子是什么颜色?”如果这个人答对了,这个人就安然无事,他所代表的地球上 6 亿人口也将获救。否则,这个人将被爆头,外星人将把他所代表的 6 亿人口变成蘑菇的肥料。每个人的答案屋子里所有人都可以听到。

现在,人类的命运在你手上,你可以设计一个方案,使这十个人提前制定一个计划,这个计划必须拯救尽可能多的人。

提示:有个方案可以让你拯救其中至少九个人。

求职者的最佳答案:

第十个人计算排在前面的所有人的绿帽子是奇数还是偶数并向前面的人发出一个信号,这样排在前面人就可以再通过排在更前面的所有人的绿帽子的奇偶数是否变化来判断自己帽子的颜色,因为如果绿帽子奇偶发生变化,那自己就是那个导致变化的“绿帽子”,如果没变化,自己就是“紫帽子”。

因为所有的人除了回答外星人的问题不能说话,所以第十个人的“信号”只能包含在自己的答案里,比如如果排在前面的九个人有奇数顶绿帽子,这个人类就告诉外星人自己的帽子是“绿色”,如果是偶数,就猜自己的帽子是“紫色”。这样等于给他前面的人一个暗号,排在他前面的这个人,可以通过计算自己前面的所有人的绿帽子的奇偶变化来判断自己的帽子是绿还是紫。

排在最后的那个人为了大众利益没有选择,根据前面的人的帽子情况告诉外星人自己是“绿帽子”还是“紫帽子”,他的答案有1/2的几率正确,但他前面的人一定都能答对。

还没懂?比如第十个人看到前面有奇数个绿帽子,他就告诉外星人自己的是绿色,这是他前面的人就知道他的意思是前面九个人中有奇数个绿帽子,这是第九个人再数前面八个人的,如果前面八个人中也有奇数个,那自己就是紫色帽子。第九个人告诉外星人自己是紫色帽子,第八个人就知道绿帽子没有减少还是奇数个,再数数前面七个人绿帽子数的奇偶,就可以判断自己帽子的颜色;反之,如果第九个人告诉外星人自己是绿色帽子,那第八个人就应该知道绿色帽子减少了一个由奇数变成了偶数,再看看前面所有的绿帽子情况作出判断。这样一个接一个,只要每个人都认真听后面的人的答案并在心里计算所剩绿帽子的奇偶变化,前面九个人都能获救。

当然,你也可以计算紫色帽子的奇偶。

问题四:

“100个完美的逻辑学家坐在一个房间里……”

这是一个电视真人秀节目,节目里 100 个拥有完美无瑕逻辑思维能力的人围成一圈坐在一个房间里。在进入房间前,这 100 个人被告知,100个人中至少有一个人的额头是蓝色的。你可以看见别人额头的颜色,但无法看到自己的,你需要对自己额头是不是蓝色进行猜测,在房间的灯被关掉时,如果你推测出你的额头是蓝色的,你需要站起来离开房间。

然后房间的灯被再次打开,那些认为自己额头是蓝色的人已经不在屋内。接下来灯会再次被关掉,剩下的人中推测自己额头是蓝色的离开房间,如此重复。

问题来了,假设这 100 个人的额头都是蓝色的,将会发生什么情况?注意,这 100 个人都有完美无瑕的逻辑推理能力,他们会根据其他人的额头颜色对自己进行合理的推理和猜测。

提示:想想看,如果 100 个人不全是蓝色额头,又会发生什么情况?

求职者的最佳答案:

将会出现的情况是:灯关了又开,开了又关,重复到第一百次时,所有人都同时离开。

这是为什么呢?想想看,每个人都看见其他 99 个人额头是蓝色的,灯关掉后再打开,发现这 99 个蓝色额头的同伴都没有离开,然后灯再次关掉后打开,如此重复 100 遍后,所有人同时离开了房间。

这么理解吧,假设只有一个人的额头是蓝色的,由于这 100 个人事先被告知至少有一个人额头是蓝色,所以这个人如果看到其他 99 个人额头都不是蓝色,立马就知道自己是蓝色,所以灯一关掉,这个人就会离开房间。

如果有两个人额头是蓝色呢?

其中一个蓝色额头的人会想:我的额头可能是蓝色也可能不是蓝色,现在其他 99 个人中有一个蓝色额头的人,如果我不是蓝色,那么就只有这一个人是,那么他看到我们都不是蓝色额头就能推断出他是,那么灯一关他就会离开,我先等一下,灯再打开如果他已经走了,那就证明我的额头不是蓝色的。

反之,如果我的额头是蓝色的,那个蓝色额头的人的想法会和我刚才的想法一样先等一等,第一次关灯他不会离开,这样如果灯开了那个蓝色额头的人还在,就证明我的额头也是蓝色的。这样第二次关灯我们俩会一起离开。

以此类推,如果有三个人额头是蓝色,你看到另外两个人额头是蓝色,应该推算出如果自己的额头不是蓝色的话,那么灯第二次关的时候他们俩会同时离开,如果他们俩没有同时离开,那就证明我的额头是蓝色的,我应该在第三次关灯的时候离开。结果是,三个蓝色额头的人在第三次关灯的时候同时离开。

把上述逻辑重复一百遍,你就得到了最上面的正确答案。

问题五:

“你有一个横 6 竖 6 的方格……”

你现在在左上第一个格子里,你的任务是移动到最右下脚的格子里,你每次只能向右或者向下移动,不能斜向移动,也不能后退。

你能找出几种方法移动到最右下脚的格子?

求职者的最佳答案:

252种。

从对称的角度思考这个问题。

随便挑选一个格子,假设你从出发点有n种方法从到达与所选格子上边相邻的格子,m种方法到达与它左边相邻的格子。

想想看,从出发点到达一个格子的方法与到达它左边和上边的格子的方法有什么关系?说对了,由于你只能向右和向下移动,到达一个格子,不是从它左边来,就是从它上边来。所以你从出发点到达一个格子的方法等于到达它上边格子的方法好到达它左边格子的方法的和相同,也就是n+m。

这样,参照上图,你就可以算出从出发点到达每一个格子的方法了。

问题六:

“逻辑学家们围成一圈坐着,他们的额头上面画有数字……”

又来一个逻辑学家围成一圈的问题,这次是这样的,三个拥有完美逻辑推理能力的人围成一圈坐在一个房间里,每个人的额头上都画着一个大于 0 的数字,三个人的数字各不相同,每个人都看得见其他两个人的数字,看不见自己的。

这三个数字的情况是,其中一个数字是其他两个数字的和,已知的情况还有,其中一个逻辑学家的数字是 20,一个是 30。

游戏组织者从这三个逻辑学家后面走过,并问三个人各自额头上的数字是什么。但第一轮每个逻辑学家都回答他们无法推测自己的数字是什么。游戏组织者只好进行第二轮的发问,这是为什么?你能据此猜出三个逻辑学家的数字吗?

求职者的最佳答案:

结果由第三个逻辑学家的答案而定。他们三个的数字分别是 20,30和 50。

假设第二个和第三个逻辑学家额头上的数字是 20 和 30,这时候如果第一个逻辑学家的数字是 10,那么第二个逻辑学家看到其他两个人一个是 10,一个是 30,会想:“我要么是 20,要么是 40。”

第三个逻辑学家看到其他两个人一个是 10,一个是 20,会想:“我要么是 30,要么是 10,但我不会是 10,因为每个数字都不一样,所以我应该是 30。”

这样第三个逻辑学家就会猜出自己的数字是 30 了,但他没有,第一轮谁也没有准确推测出自己的数字,这说明我们的前提不正确,第一个逻辑学家的数字不是 10,那么他只能是 50。

问题七:

“你面前有一百个灯泡,排成一排……”

一百个灯泡排成一排,第一轮你把他们全都打开亮着,然后第二轮,你每隔一个灯泡关掉一个,这样所有排在偶数的灯泡都被关掉了。

然后第三轮,你每隔两个灯泡,将开着的灯泡关掉,关掉的灯泡打开(也就是说将所有排在 3 的倍数的灯泡的开关状态改变)。

以此类推,你将所有排在 4 的倍数的灯泡的开关状态改变,然后将排在 5 的倍数的灯泡开关状态改变……

第 100 轮的时候,还有几盏灯泡亮着?

提示:如果你是第n轮(n大于 1 小于 100),排在n的倍数位置的灯泡的开关状态就发生转变。

反过来,比如第 8 个灯泡,当你在 8 的因子轮(即第1,2,4和 8 轮)的时候,它就会改变开关状态。所以对于第m个灯泡,如果m有奇数个因子,你的开关状态就发生奇数次变化。

求职者的最佳答案:

10盏灯泡亮着,这 10 盏灯泡排位数都是平方数。

根据提示已经可以看出,这个问题的实质就是找出有多少个灯泡的排位数拥有奇数个因子。每拥有一个因子,到这个因子数的那一轮时,这个灯泡就会被转换开关状态。

比如第 1 轮,因为所有 100 个数字都有因数1,所以全部被打开;第 2 轮,只有那些拥有 2 这个因子、能被 2 整除的数字的灯泡转换状态被关掉;第 3 轮,只有那些拥有 3 这个因子、能被 3 整除的数字的灯泡被转换状态。以此类推,如果灯泡排位数拥有奇数个因子,意味着它被打开和关上奇数次,那它就最终还是被打开的状态,如果灯泡排位数拥有偶数个因子,那它最终就是被关上的状态。

比如第 1 个灯泡有奇数个因子,第 2 个有偶数个(1,2),第 3 个有偶数个(1,3)第 4 个有奇数个(1,2,4),所以第 4 个灯泡最后还是亮着的。

最终计算得出,所有排位数为平方数的灯泡最终还是亮着的,因为这些数都拥有奇数个因子,1,4,9,16……

在 100 以内,共有 10 个平方数,分别是1,4,9,16,25,36,49,64,81,100。这 10 个排位数的灯泡,最终都还是亮着。

问题八:

“你有一个立方体,立方体的边长是3……”

这个问题比前面那个从左上格子走到右下格子的问题难,因为那毕竟是个平面问题。如图所示,这次的任务是从立方体的背面左上的小立方体走到完全相对的正面右下小立方体。

你可以往上移,也可以往下移,还可以往前移。You can move toward the front, you can move down, or you can move upward。

问题还是,你共有几种走法?

求职者的最佳答案:

90种,思路是将这个立方体分成“三层”。

上面平面图的那道题的思路就是个最好的提示。你可以将这个立方体分成“三层”,粉红色代表最上面那层,紫色代表中间那层,橘红色代表下面那层。

现在,我们把问题变成了:从左边、右边和上边到达目标小立方体的走法共有多少(如图所示,即到达紫色中间层最右下脚方块以及橘红色最右下脚左边以及上边相邻方块的方法)?假设从起点小立方体到达终点小立方体左边相邻小立方体共有m种方法,到达右边相邻小立方体共有n种方法,到达上边相邻小立方体有r种方法,那我们需要求出来的,就是n+m+r。

按照前面那道平面题的思路和方法,你就可以一点一点计算出来我们的正确答案。

OpenGL学习-环境配置(Ubuntu+Eclipse)

前几天买了本《OpenGL超级宝典(第5版)》打算认真地学习点OpenGL的东西了,不过,首先遇上的麻烦事就是环境配置,在我的Thinkpad 510(Window8+VS2012)下我是怎么也没能配置好,按照书的上说明一步步来,好容易编译成功,但是只要有调用glxxx这样东西的地方立马报错,哎,之前没做过C++的程序,看到这种错误也不知如何解决,网上找了找,有说是因为显卡的问题,不支持OpenGL 3,实在找不到解决办法,就想到到其他系统中试了,我虚拟机里有Mac OS X 和 Ubuntu,不过我一直不喜欢Mac OS X, 只是工作所需才安装的,所以还是到Ubuntu下进行配置了。折腾了N久之后,终于算是配置成功了,大致步骤如下:
1. 下载安装Eclipse及C++的开发扩展CDT, 开始我是从 Ubuntu Soft Center 里直接下载的,不过似乎之后在安装C++扩展时打不开安装扩展的窗口,不知何故,后来直接去官网下了一个把这个给覆盖了就正常了。
2. 在Ubuntu Soft Center下安装如下几个包:libglu1-mesa-dev, freeglut3-dev, libglew1.6-dev.
3. 在Eclipse下打开书中的GLTools项目并编译,我是用了刚刚系统装的glew,所以就把这个项目里的与这个相关的文件给删除了。具体设置如图:

4. 在Eclipse下打开书中的Triangle项目并编译,具体设置如图:

终于,这个丑陋的三角形出现在我的面前了,啊哈哈。。。

[转] 看完这21个故事,百分之30的人都成了千万富翁,下一个会是你吗?

1、甲去买烟,烟29元,但他没火柴,跟店员说:“顺便送一盒火柴吧。”店员没给 .
乙去买烟,烟29元,他也没火柴,跟店员说:“便宜一毛吧。”最后,他用这一毛买一盒火柴。

这是最简单的心理边际效应。第一种:店主认为自己在一个商品上赚钱了,另外一个没赚钱。赚钱感觉指数为1。第二种:店主认为两个商品都赚钱了,赚钱指数为2。当然心理倾向第二种了。同样,这种心理还表现在买一送一的花招上,顾客认为有一样东西不用付钱,就赚了,其实都是心理边际效应在作怪。

启示:变换一种方式往往能起到意想不到的效果! 通常很多事情换一种做法结果就不同了。人生道路上,改善心智模式和思维方式是很重要的。

2.有个小男孩,有一天妈妈带着他到杂货店去买东西,老板看到这个可爱的小孩,就打开一罐糖果,要小男孩自己拿一把糖果。但是这个男孩却没有任何动作。几次的邀请之后,老板亲自抓了一大把糖果放进他的口袋中。回到家中,母亲好奇地问小男孩,为什么没有自己去抓糖果而要老板抓呢?小男孩回答很妙:“因为我的手比较小呀!而老板的手比较大,所以他拿的一定比我拿的多很多!” –

启示:这是一个聪明的孩子,他知道自己的有限,而更重要的,他也知道别人比自己强。凡事不只靠自己的力量,学会适时地依靠他人,是一种谦卑,更是一种聪明。

3.美国知名主持人林克莱特有一天访问一名小朋友,问他说:“你长大后想要当做什么呀?”小朋友天真地回答:“嗯……我要当飞机的驾驶员!”林克莱特接着问:“如果有一天,你的飞机飞到太平洋上空所有引擎都熄火了,你会怎么办?”小朋友想了想:“我会先告诉坐在飞机上的人绑好安全带,然后我挂上我的降落伞跳出去。”当在场的观众笑得东倒西歪时,林克莱特继续注视着这孩子,想看他是不是自作聪明的家伙。没想到,接着孩子的两行热泪夺眶而出,这才使得林克莱特发觉这孩子的悲悯之心远非笔墨所能形容。于是林克莱特问他说:为什么你要这么做?”小孩的答案透露了这个孩子真挚的想法:“我要去拿燃料,我还要回来!!!” -..

启示:这就是“听的艺术”。一是听话不要听一半。二是不要把自己的意思,投射到别人所说的话上头。要学会聆听,用心听,虚心听。 –

4. 有两个和尚他们分别住在相邻的两座山上的庙里。这两座山之间有一条溪,于是这两个和尚每天都会在同一时间下山去溪边挑水,久而久之他么变成为了好朋友。就这样时间在每天挑水中不知不觉已经过了五年。突然有一天左边这座山的和尚没有下山挑水,右边那座山的和尚心想:”他大概睡过头了。”便不以为意。哪知道第二天左边这座山的和尚还是没有下山挑水,第三天也一样。过了一个星期还是一样,直到过了一个月右边那座山的和尚终于受不了,他心想:”我的朋友可能生病了,我要过去拜访他,看看能帮上什么忙。”于是他便爬上了左边这座山,去探望他的老朋友。等他到了左边这座山的庙,看到他的老友之后大吃一惊,因为他的老友正在庙前打太极拳,一点也不像一个月没喝水的人。他很好奇地问:”你已经一个月没有下山挑水了,难道你可以不用喝水吗?”左边这座山的和尚说:”来来来,我带你去看。”于是他带着右边那座山的和尚走到庙的后院,指着一口井说:”这五年来,我每天做完功课后都会抽空挖这口井,即使有时很忙,能挖多少就算多少。如今终于让我挖出井水,我就不用再下山挑水,我可以有更多时间练我喜欢的太极拳。”-

启示:我们在公司领的薪水再多,那都是挑水。而把握下班后的时间挖一口属于自己的井,培养自己另一方面的实力,未来当我们年纪大了,体力拼不过年轻人了,依然还是有水喝,而且还能喝得很悠闲。-

5.有两个人相约到山上去寻找精美的石头,甲背了满满的一筐,乙的筐里只有一个他认为是最精美的石头。甲就笑乙:“你为什么只挑一个啊?”乙说:“漂亮的石头虽然多,但我只选一个最精美的就够了。”甲笑而不语,下山的路上,甲感到负担越来越重,最后不得已不断地从一筐的石头中挑一个最差的扔下,到下山的时候他的筐里结果只剩下一个石头! –

启示:人生中会有许多的东西,值得留恋,有的时候你应该学会去放弃。

6.有一家牙膏厂,产品优良,包装精美,受到顾客的喜爱,营业额连续10年递增,每年的增长率在10%~20%。可到了第11年,业绩停滞下来,以后两年也如此。公司经理召开高级会议,商讨对策。会议中,公司总裁许诺说:谁能想出解决问题的办法,让公司的业绩增长,重奖10万元。有位年轻经理站起来,递给总裁一张纸条,总裁看完后,马上签了一张10万元的支票给了这位经理。那张纸条上写着:将现在牙膏开口扩大1毫米。消费者每天早晨挤出同样长度的牙膏,开口扩大了l毫米,每个消费者就多用1毫米宽的牙膏,每天的消费量将多出多少呢!公司立即更改包装。第14年,公司的营业额增加了32%。 –

启示:面对生活中的变化,我们常常习惯过去的思维方法。其实只要你把心径扩大1毫米,你就会看到生活中的变化都有它积极的一面,充满了机遇和挑战-

7.一只火鸡和一头牛闲聊,火鸡说:我希望能飞到树顶,可我没有勇气。牛说:为什么不吃一点我的牛粪呢,他们很有营养。火鸡吃了一点牛粪,发现它确实给了它足够的力量飞到第一根树枝,第二天,火鸡又吃了更多的牛粪,飞到第二根树枝,两个星期后,火鸡骄傲的飞到了树顶,但不久,一个农夫看到了它,迅速的把它从树上射了下来。-

启示:牛屎运让你达到顶峰,但不能让你留在那里。 –

8.乌鸦站在树上,整天无所事事,兔子看见乌鸦,就问:我能像你一样,整天什么事都不用干吗?乌鸦说:当然,有什么不可以呢?于是,兔子在树下的空地上开始休息,忽然,一只狐狸出现了,它跳起来抓住兔子,把它吞了下去。-

启示:如果你想站着什么事都不做,那你必须站的很高,非常高。 –

9.一只小鸟飞到南方去过冬。天很冷,小鸟几乎冻僵了。于是,飞到一大块空地上,一头牛经过那儿,拉了一堆牛粪在小鸟的身上,冻僵的小鸟躺在粪堆里,觉得很温暖,渐渐苏醒过来,它温暖而舒服的躺着,不久唱起歌来,一只路过的野猫听到声音,走过去看个究竟,循着声音,野猫很快发现了躺在粪堆里的小鸟,把它拽出来吃掉了。-

启示:不是每个往你身上拉大粪的人都是你的敌人。也不是每个把你从粪堆里拉出来的人都是你的朋友,还有,当你躺在粪堆里时,最好把你的嘴闭上。

10.从前,有两个饥饿的人得到了一位长者的恩赐:一根鱼竿和一篓鲜活硕大的鱼。其中,一个人要了一篓鱼,另一个人要了一根鱼竿,于是他们分道扬镳了。得到鱼的人原地就用干柴搭起篝火煮起了鱼,他狼吞虎咽,还没有品出鲜鱼的肉香,转瞬间,连鱼带汤就被他吃了个精光,不久,他便饿死在空空的鱼篓旁。另一个人则提着鱼竿继续忍饥挨饿,一步步艰难地向海边走去,可当他已经看到不远处那片蔚蓝色的海洋时,他浑身的最后一点力气也使完了,他也只能眼巴巴地带着无尽的遗憾撒手人间。又有两个饥饿的人,他们同样得到了长者恩赐的一根鱼竿和一篓鱼。只是他们并没有各奔东西,而是商定共同去找寻大海,他俩每次只煮一条鱼,他们经过遥远的跋涉,来到了海边,从此,两人开始了捕鱼为生的日子,几年后,他们盖起了房子,有了各自的家庭、子女,有了自己建造的渔船,过上了幸福安康的生活。-

启示:一个人只顾眼前的利益,得到的终将是短暂的欢愉;一个人目标高远,但也要面对现实的生活。只有把理想和现实有机结合起来,才有可能成为一个成功之人。有时候,一个简单的道理,却足以给人意味深长的生命启示。-

11. 孔子的一位学生在煮粥时,发现有肮脏的东西掉进锅里去了。他连忙用汤匙把它捞起来,正想把它倒掉时,忽然想到,一粥一饭都来之不易啊。于是便把它吃了。刚巧孔子走进厨房,以为他在偷食,便教训了那位负责煮食的同学。经过解释,大家才恍然大悟。孔子很感慨的说:“我亲眼看见的事情也不确实,何况是道听途听呢?”-

启示:推销生意是一种组织性质的生意,因为人多,人事问题也多。我们不时听到是非难辨的话,如某公司攻击另一间公司,如是者往往令人混淆是非,影响信心。因此找出事情的真相,不是轻易相信谣言,辛辛苦苦建立的事业才不会毁于一旦。-

12.有位秀才第三次进京赶考,住在一个经常住的店里。考试前两天他做了三个梦,第一个梦是梦到自己在墙上种白菜,第二个梦是下雨天,他戴了斗笠还打伞,第三个梦是梦到跟心爱的表妹躺在一起,但是背靠着背。这三个梦似乎有些深意,秀才第二天就赶紧去找算命的解梦。算命的一听,连拍大腿说:”你还是回家吧。你想想,高墙上种菜不是白费劲吗?戴斗笠打雨伞不是多此一举吗?跟表妹躺在一张床上了,却背靠背,不是没戏吗?” 秀才一听,心灰意冷,回店收拾包袱准备回家。店老板非常奇怪,问:”不是明天才考试吗,今天你怎么就回乡了?”秀才如此这般说了一番,店老板乐了:”哟,我也会解梦的。我倒觉得,你这次一定要留下来。你想想,墙上种菜不是高种吗?戴斗笠打伞不是说明你这次有备无患吗?跟你表妹背靠背躺在床上,不是说明你翻身的时候就要到了吗?”秀才一听,更有道理,于是精神振奋地参加考试,居然中了个探花。-

启示:积极的人,象太阳,照到哪里哪里亮,消极的人,象月亮,初一十五不一样。想法决定我们的生活,有什么样的想法,就有什么样的未来。-

13.有一天动物园管理员们发现袋鼠从笼子里跑出来了,于是开会讨论,一致认为是笼子的高度过低。所以它们决定将笼子的高度由原来的十公尺加高到二十公尺。结果第二天他们发现袋鼠还是跑到外面来,所以他们又决定再将高度加高到三十公尺没想到隔天居然又看到袋鼠全跑到外面,于是管理员们大为紧张,决定一不做二不休,将笼子的高度加高到一百公尺。一天长颈鹿和几只袋鼠们在闲聊,”你们看,这些人会不会再继续加高你们的笼子?”长颈鹿问。”很难说。”袋鼠说∶”如果他们再继续忘记关门的话!”-

启示:其实很多人都是这样,只知道有问题,却不能抓住问题的核心和根基。-

14. 一天夜里,已经很晚了,一对年老的夫妻走进一家旅馆,他们想要一个房间。前台侍者回答说:”对不起,我们旅馆已经客满了,一间空房也没有剩下。”看着这对老人疲惫的神情,侍者不忍心深夜让这对老人出门另找住宿。而且在这样一个小城,恐怕其他的旅店也早已客满打烊了,这对疲惫不堪的老人岂不会在深夜流落街头?于是好心的侍者将这对老人引领到一个房间,说:”也许它不是最好的,但现在我只能做到这样了。”老人见眼前其实是一间整洁又干净的屋子,就愉快地住了下来。第二天,当他们来到前台结账时,侍者却对他们说:”不用了,因为我只不过是把自己的屋子借给你们住了一晚–祝你们旅途愉快!”原来如此。侍者自己一晚没睡,他就在前台值了一个通宵的夜班。两位老人十分感动。老头儿说:”孩子,你是我见到过的最好的旅店经营人。你会得到报答的。”侍者笑了笑,说这算不了什么。他送老人出了门,转身接着忙自己的事,把这件事情忘了个一干二净。没想到有一天,侍者接到了一封信函,打开看,里面有一张去纽约的单程机票并有简短附言,聘请他去做另一份工作。他乘飞机来到纽约,按信中所标明的路线来到一个地方,抬眼一看,一座金碧辉煌的大酒店耸立在他的眼前。原来,几个月前的那个深夜,他接待的是一个有着亿万资产的富翁和他的妻子。富翁为这个侍者买下了一座大酒店,深信他会经营管理好这个大酒店。这就是全球赫赫有名的希尔顿饭店首任经理的传奇故事。-

15.有一位表演大师上场前,他的弟子告诉他鞋带松了。大师点头致谢,蹲下来仔细系好。等到弟子转身后,又蹲下来将鞋带解松。有个旁观者看到了这一切,不解地问:”大师,您为什么又要将鞋带解松呢?”大师回答道:”因为我饰演的是一位劳累的旅者,长途跋涉让他的鞋带松开,可以通过这个细节表现他的劳累憔悴.” “那你为什么不直接告诉你的弟子呢?””他能细心地发现我的鞋带松了,并且热心地告诉我,我一定要保护他这种热情的积极性,及时地给他鼓励,至于为什么要将鞋带解开,将来会有更多的机会教他表演,可以下一次再说啊。”-

启示:人一个时间只能做一件事,懂抓重点,才是真正的人才。-

16.一个人在高山之巅的鹰巢里,抓到了一只幼鹰,他把幼鹰带回家,养在鸡笼里。这只幼鹰和鸡一起啄食、嬉闹和休息。它以为自己是一只鸡。这只鹰渐渐长大,羽翼丰满了,主人想把它训练成猎鹰,可是由于终日和鸡混在一起,它已经变得和鸡完全一样,根本没有飞的愿望了。主人试了各种办法,都毫无效果,最后把它带到山顶上,一把将它扔了出去。这只鹰像块石头似的,直掉下去,慌乱之中它拼命地扑打翅膀,就这样,它终于飞了起来!-

启示:磨练召唤成功的力量。-

17.雨后,一只蜘蛛艰难地向墙上已经支离破碎的网爬去,由于墙壁潮湿,它爬到一定的高度,就会掉下来,它一次次地向上爬,一次次地又掉下来……第一个人看到了,他叹了一口气,自言自语:”我的一生不正如这只蜘蛛吗?忙忙碌碌而无所得。”于是,他日渐消沉。第二个人看到了,他说:这只蜘蛛真愚蠢,为什么不从旁边干燥的地方绕一下爬上去?我以后可不能像它那样愚蠢。于是,他变得聪明起来。第三个人看到了,他立刻被蜘蛛屡败屡战的精神感动了。于是,他变得坚强起来。-

启示:有成功心态者处处都能发觉成功的力量。-

18.一个老人在高速行驶的火车上,不小心把刚买的新鞋从窗口掉了一只,周围的人倍感惋惜,不料老人立即把第二只鞋也从窗口扔了下去。这举动更让人大吃一惊。老人解释说:”这一只鞋无论多么昂贵,对我而言已经没有用了,如果有谁能捡到一双鞋子,说不定他还能穿呢!”-

启示:成功者善于放弃。-

19.某大公司准备以高薪雇用一名小车司机,经过层层筛选和考试之后,只剩下三名技术最优良的竞争者。主考者问他们:”悬崖边有块金子,你们开着车去拿,觉得能距离悬崖多近而又不至于掉落呢?””二公尺。”第一位说。”半公尺。”第二位很有把握地说。”我会尽量远离悬崖,愈远愈好。”第三位说。结果这家公司录取了第三位。-

启示:不要和诱惑较劲,而应离得越远越好。-

20.老和尚携小和尚游方,途遇一条河;见一女子正想过河,却又不敢过。老和尚便主动背该女子趟过了河,然后放下女子,与小和尚继续赶路。小和尚不禁一路嘀咕:师父怎么了?竟敢背一女子过河?一路走,一路想,最后终于忍不住了,说:师父,你犯戒了?怎么背了女人?老和尚叹道:我早已放下,你却还放不下!-

启示:君子坦荡荡,小人常戚戚;心胸宽广,思想开朗,遇事拿得起、放得下,才能永远保持一种健康的心态。-

21.一个心理学教授到疯人院参观,了解疯子的生活状态。一天下来,觉得这些人疯疯癫癫,行事出人意料,可算大开眼界。想不到准备返回时,发现自己的车胎被人下掉了。”一定是哪个疯子干的!”教授这样愤愤地想道,动手拿备胎准备装上。事情严重了。下车胎的人居然将螺丝也都下掉。没有螺丝有备胎也上不去啊!教授一筹莫展。在他着急万分的时候,一个疯子蹦蹦跳跳地过来了,嘴里唱着不知名的欢乐歌曲。他发现了困境中的教授,停下来问发生了什么事。教授懒得理他,但出于礼貌还是告诉了他。疯子哈哈大笑说:”我有办法!”他从每个轮胎上面下了一个螺丝,这样就拿到三个螺丝将备胎装了上去。教授惊奇感激之余,大为好奇:”请问你是怎么想到这个办法的?” 疯子嘻嘻哈哈地笑道:”我是疯子,可我不是呆子啊!”