Codeforces Round #340 (Div. 2) B. Chocolate
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Codeforces Round #340 (Div. 2) B. Chocolate相关的知识,希望对你有一定的参考价值。
题意:一段01串 分割成段 每段只能有一个1 问一段串有多少种分割方式
思路:两个1之间有一个0就有两种分割方式,然后根据分步乘法原理来做、
(不过这里有一组0 1 0这种数据的话就不好直接处理,所以遇到第一个1才开始标记)
1 #include<iostream> 2 using namespace std; 3 int main() 4 { 5 long long l=0; 6 int n; 7 cin>>n; 8 int a; 9 int j=0; 10 int s=0; 11 for(int i=0;i<n;i++) 12 { 13 cin>>a; 14 if(s) 15 { 16 if(a==1){ 17 l*=j+1; 18 j=0;} 19 else 20 j++; 21 } 22 if(a==1 && s!=1) 23 s=1,l=1; 24 } 25 cout<<l; 26 }
以上是关于Codeforces Round #340 (Div. 2) B. Chocolate的主要内容,如果未能解决你的问题,请参考以下文章
莫队 Codeforces Round #340 (Div. 2) E
Codeforces Round #340 (Div. 2) E. XOR and Favorite Number 莫队算法
Codeforces Round #340 (Div. 2) E. XOR and Favorite Number 莫队算法
Codeforces Round #340 (Div. 2) E XOR and Favorite Number 莫队板子
Codeforces Round #340 (Div. 2) E. XOR and Favorite Number 莫队算法 + 异或和前缀和的巧妙