from collections import Counter N = int(input()) A = list(map(int, input().split())) pos = [] neg = [] for a in A: if a >= 0: pos.append(a) else: neg.append(a) dry = 0 p = sorted(pos, reverse=True) tmp = 0 for n in sorted(neg, reverse=True): if p and n + p[-1] < 0: dry += 1 p.pop() else: tmp += 1 dry += tmp // 2 wet = 0 p = sorted(pos) for n in sorted(neg): if p and n + p[-1] > 0: wet += 1 p.pop() while len(p) >= 2: if p.pop() + p.pop() > 0: wet += 1 moist = 0 p = Counter(pos) n = Counter(neg) for k, v in n.items(): vv = p[-k] moist += min(v, vv) moist += p[0] // 2 print(dry, wet, moist)