Answer
$20$ bits
Work Step by Step
If a memory has $N$ bytes, then we need enough bits to represent $N$ unique addresses.
Bits in MAR$ = ⌈\log_2N⌉$
For $N=1000000$, we have:
Bits in MAR$ = ⌈\log_2(1000000)⌉\approx ⌈19.93⌉ =20$
Minimum bits needed: $20$ bits