# PROBLEM LINK:

Practice

Contest: Division 1

Contest: Division 2

Contest: Division 3

Contest: Division 4

* Author:* himanshu154

*jay_1048576*

**Tester:***iceknight1093*

**Editorialist:**# DIFFICULTY:

TBD

# PREREQUISITES:

None

# PROBLEM:

Given the solve counts of Om and Addy on each of N days, find which one among them had the longer streak.

# EXPLANATION:

First, let’s try to find Om’s longest streak of solving problems.

That is, we want to find the longest subarray of A that contains only non-zero elements.

That can be done by iterating across the array and maintaining the current length of a non-zero subarray.

In particular,

- Let \text{cur} be a variable denoting the current length of a non-zero subarray.

Initially, \text{cur} = 0. - Then, for each i from 1 to N:
- If A_i \gt 0, increase \text{cur} by 1.
- Else, set \text{cur} to 0.

The maximum value of \text{cur} ever reached is the number we’re looking for.

Let this value be \text{mx}_A.

Similarly, Addy’s maximum streak can be found by applying this algorithm to array B, giving us the value \text{mx}_B.

Finally, compare \text{mx}_A and \text{mx}_B, and print `Om`

, `Addy`

, or `Draw`

depending on which one is higher or if they’re equal.

# TIME COMPLEXITY

\mathcal{O}(N) per testcase.

# CODE:

## Editorialist's code (Python)

```
for _ in range(int(input())):
n = int(input())
a = list(map(int, input().split()))
b = list(map(int, input().split()))
amx, bmx = 0, 0
cura, curb = 0, 0
for i in range(n):
if a[i] == 0: cura = 0
else: cura += 1
if b[i] == 0: curb = 0
else: curb += 1
amx = max(amx, cura)
bmx = max(bmx, curb)
print('Om' if amx > bmx else ('Addy' if amx < bmx else 'Draw'))
```