欢迎辞

欢迎来到“笃志以砺,决起而飞”!
如果您是第一次来到本站,建议访问本站导读以便更快地了解本站。
如果您喜欢本站,欢迎订阅

 

2012 年五月
« 四  
 123456
78910111213
14151617181920
21222324252627
28293031 

Count & 树的同构 解题报告

之所以两道题放在一起,就是因为他们很相似。 本解题报告版权归 Ceeji 所有,转载请注名出处并保留本注释。 题目一:Count 大项堆是具有如下性质的二叉树: 1.它的任意一个父亲节点的权值总是比孩子的权值要大 2.它是一颗完全二叉树 先给定这个堆的节点个数N,假如每个节点的权值都为在1—N之间的整数且各不相同,求可能的大项堆的个数。当然,这个个数可能很多,这里只要求这个个数模K即可。 输入: 两个用空格隔开的整数N和Q(N<30,Q<10^9) 输出: 可能的大项堆的个数模Q 输入样例: 3 1000 输出样例: 2

题目二:树的同构 本解题报告版权归 Ceeji 所有,转载请注名出处并保留本注释。 排序二叉树是我们熟悉的一种数据结构,这里提到的排序二叉树都是指根的关键字比左 子树上的所有点都大,比右子树上的都小(假定不存在相同的关键字)的排序二叉树。如果 给定一个输入序列,按照这个序列依次将各个结点插入,我们就得到了一棵排序二叉树。比 如输入序列 4 2 1 3 5,对应如下排序二叉树: 2 4 5 1 3 而输入序列4 5 2 1 3 以及4 2 5 1 3都对应同样的树,我们说这三个序列同构。现在给定 一个长度为N的输入序列,求与之同构的序列有多少个(包括这个序列本身)。由于问题的 答案可能比较大,只要求输出答案 mod 10,007的结果。 Input 第1行:一个正整数N,即输入序列长度。 第2行:N个1—N之间的正整数,数字相互之间不重复。 Output 仅有一行,即同构序列数 [...]

模拟赛六 赛后总结

昨天进行了模拟赛,很不爽,只有120分。想当然让我措失了80分,数学知识不能合理利用让我又失去了80分。懒惰也让我失去了一些分数。 从现在开始,我总结一下做题的情况和问题。将发布各题的解题报告。

第一题:不会,骗分 骗分也是一门艺术,不过只骗了20分。 我的骗分程序:(反正不会写,索性用 C++ 而不是 Pascal 写了一个骗分程序新鲜一下。)

  /*    Cheat By Ceeji XD  */  #include <cstdio>  using namespace std;  int n,q;  int main()  {      freopen(“count.in”,”r”,stdin);      freopen(“count.out”,”w”,stdout);      scanf(“%d”,&n);      scanf(“%d”,&q);      if (n==1) { printf(“%d\r\n”,(1 % q));  }      if (n==2) { printf(“%d\r\n”,(1 % q));  }      if (n==3) { printf(“%d\r\n”,(2 % q));  }      if (n==4) { printf(“%d\r\n”,(3 % q));  }      if (n==5) { printf(“%d\r\n”,(8 % q));  }      if (n==6) { printf(“%d\r\n”,(20 % q)); }      if (n>6) { printf(“%d\r\n”,5); }      fclose(stdin);      fclose(stdout);      return 0;  } 

/* <br/> Cheat By Ceeji XD<br/>*/<br/>#include <cstdio><br/>using namespace std;<br/>int n,q;<br/>int main()<br/>{<br/> freopen(“count.in”,”r”,stdin);<br/> freopen(“count.out”,”w”,stdout);<br/><br/> scanf(“%d”,&n);<br/> scanf(“%d”,&q);<br/><br/> if (n==1) { printf(“%d\r\n”,(1 % q)); }<br/> [...]

Cup 解题报告

本解题报告版权归 Ceeji,转载请注明出处并保留本注释。 题目描述 老师好不容易出了机房,端着他的杯子来到饮水机前,看着他那上大下小的水杯,突然想到了一个问题:如果我想接v体积的水,它的高度是多少呢? 老师的杯子可以看做是一个圆台,上面的圆的半径为R,下面的圆的半径为r,且R>=r, 杯子的高度为H。 输入: 四个数,分别为r,R,H,v,1 ≤ r, R, H ≤ 100; 0 ≤ V ≤ 1,000,000,000 输出: 一个数,表示v体积的水倒进去后的高度,保留6位小数。 输入样例: 100 100 100 3141562 输出样例: 99.999024

分析思路 本解题报告版权归 Ceeji,转载请注明出处并保留本注释。 方法一:二分法 我所采用的方法是二分。 倒入的水的高度范围一定在(0,H)之间。每次采用递归的方法去猜测水的高度,并用猜到的高度去求水的体积。如果比实际体积大那么就在低的二分区间继续查找,否则就在高的二分区间继续查找。直到二分的范围非常小,可以忽略不记的时候输出结果。

方法二:纯数学方法(感谢 CmYkRgB123): 圆柱情况是特殊的,特殊考虑。

如果是圆台,看它的轴截面图,可以看作为一个直角梯形的旋转体。梯形上底为R,下底为r,高为H。延长两腰中的一腰和高线,补全为直角三角形,设梯形高 线补全的长度增量为a,则直角三角形的两边分别为R和H+a。设倒水后水达到的高度为h,表面半径为r’,根据相似三角形

  r/a=R/(H+a)=r’/(h+a) 

<br/>r/a=R/(H+a)=r’/(h+a)<br/>

再有圆台体积公式

  1/3*pi*(r’^2*(h+a) - r^2*a)=V

<br/>1/3*pi*(r’^2*(h+a) – r^2*a)=V

两个式子联立可以用已知量表示出h。

完整代码(方法一)

?View Code PASCAL1 2 3 [...]

给感到累和抑郁的人

  献给累、迷茫、忍受不了、抑郁的人,我希望你能坚持到最后。   人的路是自己选的,有时侯想起过去和未来还有一点恐怖。比如我,高一时我还搞过一段数学竞赛,但变态的强牛实在让我恐怖,所以不敢搞了。学计算机前也忧郁过到底要学计算机还是要攻高考,我选择了计算机。现在,奖是拿了,可是还有保送考试,万一高三没考过,不就没退路了?如果现在不继续搞计算机,转文化课,可是我丢了那么多功课,与某些整天学习学到变态的人怎么拼得赢?如果继续学计算机,如果省选没进,就只有个NOIP省一,再加上功课继续拉下,也是很恐怖的。。。   可是你不能老想上面这些(不是我的这些,而是你的那些。。)。不经历高中,不知道什么叫累……经历了高中,就要学会坚定的走下去。。。既然选择了这条路,就必须这样走下去,因为这里可没有什么“退一步,海阔天空”的道理。必须走下去,而且必须赢。   我现在深刻地体会到了“痛并快乐着”的道理。以前总觉得高中很恐怖,每天学到那么晚,奋斗三年,昏天暗地的,但是实际上,现在我觉得,习惯了这种生活后,确实也很有意思。   如果一个人每天都很高兴,从没有遇到困难和挫折,那他必定不知道什么叫高兴,他觉得一切都理所应当。只有一个人经历了艰难困苦之后“玉汝于成”,才会珍惜得到的东西。   我曾经多次面对几百页的作业发奋狂写到天昏地暗,曾经经常每天只吃一顿饭,长期24小时处于昏昏沉沉状态,当全班人都去看电影之时,我在机房孤单的打着程序。来自老师、家长、同学的压力天天要面对。而对我来说,还有更多的事情。因为我是一个共享软件开发商,每天我必须处理许多商务邮件和客户反馈,不断升级我的软件版本来满足客户需求,以增强我软件的知名度为未来作出祭奠。光一个进销存就用了我累计有半年的假期时间吧,很恐怖吧,在学校学疯之后到家还这么累,星期六晚上常常1点还没睡。周日晚上还有晚自习,要早早离开家,连晚饭都不能好好吃。况且每星期我都要比别人再少7个小时左右的晚自习时间来搞竞赛,每周一、周四作业都难以交差,就这么一年多过去了。得到的结论是:别人看起来很苦,但是我觉得很高兴,很充实,很有挑战性。回想过去的岁月,也很有成就感。   我从来不认为学习是靠时间堆积出来的,因为我的学习时间比别人可能要少一半吧,关键是学习效率和心态。所以,虽然我很忙,我还会有大量的时间用于休息和浪费上,因为那是一种休息,我完全赞同在累的时候休息一下。比如,我会用很多时间泡在网上,但这并没有影响我的学习。很多人做不到吧?合理安排时间是很重要的。   人生就像一场旅行,最重要的是过程,退缩的人是懦弱的人。心力交瘁的时候会很多,但是请你想想,什么东西都总会过去的。从小到大,我们经历过多少次绝望,感到“完了”或者失去信心?但是现在再回想,很多当时觉得很严重的东西也能化为一笑了之了吧。   以上内容,是我切身感受,对于某些现在觉得抑郁或累的人,希望你对比下吧,我想说的是,无论什么时候,生活都是充满挑战、激情、乐趣与梦想的。学会奋斗,学会畅想,学会休息。

  附上我最喜欢的短诗一首:

   假如生活欺骗了你,    不要悲伤,不要心急;    忧郁的日子里须要镇静    相信吧,快乐的日子将会来临。    心儿永远向往着未来,    现在却常是忧郁。    一切都是瞬息,一切都将会过去    而那过去了的,就会成为亲切的怀恋。

  希望这篇文章能够鼓励我自己继续奋斗,也能帮助一些需要心理帮助的人。最后,我祝所有人天天开心。   这很少有打这么长的文章,希望不是白打。

第 3 页,共 3 页123