问题2457--巧克力

2457: 巧克力

时间限制: 2 Sec  内存限制: 256 MB
提交: 150  解决: 25
[提交] [状态] [讨论版] [命题人:]

题目描述

Bob喜欢吃甜食。他最喜欢的巧克力棒是由多个巧克力小块组成的,每一小块都可能含有一颗坚果。Bob想把一块巧克力棒掰成多个巧克力大块,希望任意巧克力大块都刚好含有一颗坚果,任何一个掰开的位置都在两个相邻的巧克力小块之间。 

请你帮他计算能做到这件事不同方法的数量。任意相邻的两个巧克力小块之间的位置掰开或者不掰开,会被考虑成两种不同的方法。  

  
请注意,如果Bob不掰开巧克力棒,所有的巧克力小块将形成一块,它仍然必须含有一个坚果。


输入

输入的第一行包含整数(1 ≤ ≤ 100)——巧克力小块的数量。 

第二行包含n个整数ai (0 ≤ ai ≤ 1),其中0表示没有坚果,1代表一块坚果。 


输出

打印出将巧克力棒分成多个巧克力大块的不同方法数,这样每个巧克力大块都包含一个坚果。

样例输入

3
0 1 0

样例输出

1

提示

这里提供两个样例说明。 

input0:
3
0 1 0

output0:
1

input1:
5
1 0 1 0 1

output1:
4

在第一个样例中只有一颗坚果,所以不同方法的数量等于1,Bob不应该有任何掰开操作。
 
在第二个样例中,你可以用四种方法掰开巧克力:
10|10|1 
1|010|1 
10|1|01 
1|01|01

来源/分类

 

[提交] [状态]