当前位置:首页 » 交易平台 » scoi2010股票交易
扩展阅读
明年买股票后年买房 2025-09-11 19:26:58
股票策略平台招商 2025-09-11 19:15:58
离婚七年痒 2025-09-11 19:14:51

scoi2010股票交易

发布时间: 2022-01-10 10:28:22

Ⅰ scoi2010 operation哪位高手告诉一下怎么统计“[a, b]区间内最多有多少个连续的1”

恩,有点难
对于一个线段树的节点i,维护一个ls代表从左往右数最大的连续1的个数,rs是从右往左数最大连续1个个数,ss是这个节点最大的连续1个个数。如果ss=ls 或者 ss=rc 那么 ss=0
ss=max(左儿子的ss,右儿子的ss)
if 左儿子的rs>0 并且右儿子的ls>0 那么 ss=max(ss,左儿子的rs+右儿子的ls)
ls=左儿子的ls if 左儿子全是1 那么ls=ls+右儿子的ls
rs=右儿子的rs if 右儿子全是1 那么rs=rs+左儿子的rs