君はまるで砂漠に咲く、一輪の花。

僕はその花に引き寄せられる蝶。

CROC-MBTU 2012, Final Round

はい。 更新:2014/10/13 http://codeforces.com/contest/250

A. Paper Work

ざっくりと大意

・Polycarpusは会社の過去n日間の業績を分析。\(a_i\)が正なら利益、負なら損失。
・Polycarpusは上司が見る用にデータをいくつかのフォルダに分けるが、3日分以上のデータを入れつつ、上司が怒らない用に損失の日をフォルダ内には2日までにしたい。

方針のようなもの

・データを先頭から見ていって負が3つ貯まったら1つ手前で区切る。

n=int(raw_input())
l=map(int,raw_input().split())
k=[]
ans=chk=cnt=0
for i in range(n):
    if l[i]<0 and chk<2 and i!=n-1:
        chk+=1
    elif l[i]<0 and chk==2:
        k.append(i-sum(k))
        chk=1
    if i==n-1 and sum(k)!=n:
        k.append(i+1-sum(k))
print len(k)
print ' '.join(map(str,k))