以文本方式查看主题

-  趣题之家  (http://qthome.org/bbs/index.asp)
--  算法艺术  (http://qthome.org/bbs/list.asp?boardid=38)
----  简单的练习题  (http://qthome.org/bbs/dispbbs.asp?boardid=38&id=448)

--  作者:remlostime
--  发布时间:6/22/2005 7:30:19 PM

--  简单的练习题
Problem 1 elevator.


一个简单的数学模拟题!


有一座电梯,它的性能如下:


上升一层需要6秒钟,下降一层需要4秒钟,如果要让它停下,它会停5秒钟.


现在告诉你它要按顺序到达然后停靠的N个楼层,求它需要的时间.


电梯开始在0,楼梯共有100.


输入(elevator.in):第一行为N(N<=50),接下来的N行是它N个停靠的楼层.


输出(elevator.out):只有一行,为所需要的时间.


输入样例1:


1


2


输入样例2:


3


2


3


1


输出样例1:


17


输出样例2:


41




Problem 2. balloon


    在刚刚过去的六一节里(虽然我们已经不是儿童了,也可以庆祝一下啊,哈哈),游乐园的天空中飘满了气球,明明对这些气球突然有了兴趣,他需要你的帮助!


你将会被告知气球的数量以及每个气球的颜色


相同颜色的气球数量被称为这种颜色的频率。


输入(balloon.in):第一行为N(N<=100),接下来的N行为1——N个气球的颜色(单词的长度不超过14个字母)


输出 (balloon.out):第一行为气球颜色的总数.


从第二行开始,按照以下规则输出:


先输出最大频率(占一行);


再按词典顺序输出是这种频率的颜色,一种颜色占一行。


对其它所有频率按从大到小的顺序进行相同的操作(要保证操作了所有的频率与颜色)。


样例输入1


    5
green
red
blue
red
red


样例输入 2


    3
pink
orange
pink


样例输出 1


    3


    3


    red


    1


    blue


green


样例输出 2


    2


    2


    pink


    1


    orange




Problem 3.  circle


为了更好地解决这个问题,我们来看几个例子。


    首先我们定义N!=1*2*3*……*N。


    再定义C(M,N)为从M个元素中无序取出N个的方法,P(M,N)为从M个元素中有序取出N个的方法。


    这样的定义是什么意思呢?比如说从1,2,3,4共4个元素中中取出3个,有(1,2,3);(1,3,4);(2,3,4);(1,2,4)这样共4种,而这里是不考虑顺序的,所以C(4,3)=4,而如果对每一种方案考虑它的排列顺序的话,那结果将会不同,因为(1,2,3);(1,3,2);(2,1,3);(2,3,1);(3,1,2);(3,2,1)将被视为不同的方案,所以P(4,3)=6*4=24.


    下面给出它们的计算公式:


    P(M,N)=M!/(M-N)! C(M,N)=M!/((M-N)!*N!)


    再来解决这个问题,你会觉得更轻松!


    圆周上有N(N<=100)个点,用线段将它们彼此相连。这些线段中任意三条在圆内都没有公共交点,问这些线段能构成多少个顶点在圆内的三角形?


    输入(circle.in):一行,为数值N。


    输出(circle.out):一行,为所求的答案。


    注意:只要你数据处理得当,结果与中间数值的范围一定在longint以内,请不要使用int64,因为这可能会引起系统误判!


    样例输入:6


    样例输出:1  


--  作者:licong
--  发布时间:7/8/2005 9:09:27 AM

--  

确实很简单呵


不过第三个样例好像```````````````````有问题


--  作者:nowords
--  发布时间:7/15/2005 11:06:02 AM

--  
HOHO,简单,不过由于没细心还是错了一道


网上贸易 创造奇迹! 阿里巴巴 Alibaba

Powered By Dvbbs Version 7.1.0
Copyright ©2003 - 2006 QTHome.Org
页面执行时间 00.23438 秒, 2 次数据查询
本论坛采用阿里巴巴支付宝网上银行支付系统,安全、可靠、便捷