标签:
给一个数字集合{ S1,S2,…,Sn },请从这个数字集合里找出一段连续数字,使他们的乘积是最大的。以Case 1为例子,2 x 4 = 8为这个集合的最大乘积;而Case 2则为2 x 5 x(–1)x 2 x(–1)=20。如果你找到的最大乘积小于等于0,则最后答案应输出0。
Input
每组测试数据开头为一个正整数1≤N≤18,代表这个集合有几个数字。每个数字Si都是范围-10≤Si≤10的整数。下一列则为这个集合的N个数字。各组测试数据之间都有一个空白列。请用EOF判断档案结束。
Output
每组测试数据印出一列:“Case #M: The maximum product is P.”。其中M代表测资的编号(从1开始计数),而P代表的则是集合的最大乘积。每组测试数据后面请印出一行空白列。
Sample Input
3
2 4 -3
5
2 5 -1 2 -1
3
-9 -7 -8
2
1 -1
1
-9
Sample Output
Case #1: The maximum product is 8.
Case #2: The maximum product is 20.
Case #3: The maximum product is 63.
Case #4: The maximum product is 1.
Case #5: The maximum product is 0.
标签:
原文地址:http://www.cnblogs.com/jjzzx/p/5575988.html