- محدودیت زمان: ۱ ثانیه
- محدودیت حافظه: ۲۵۶ مگابایت
میلاد و پارسا که از رسیدن به مرحلهی نهایی کدکاپ ۳ جا ماندند، تصمیم به ترک دنیای کدزنی گرفتند اما دنیای کدزنی تصمیم به ترک آنها نگرفت.
متاسفانه آنها در امتحان درس طراحی الگوریتم با سوالی مواجه شدند که قادر به حل آن نیستند. متن سوال به صورت زیر است:
*دنبالهی $a$ از اعداد طبیعی متشکل از $n$ عضو در اختیار داریم. در هر مرحله میتوانیم دو اندیس $i$ و $j$ متفاوت انتخاب کرده ($1 \le i, j \le n$) * و مقدار $a_i$ را برابر $a_i \ and \ a_j$ قرار دهیم. کمترین تعداد مراحلی که میتوانیم همهی اعداد را صفر کنیم چیست؟
نتیجهی عملیات $x\ and\ y$ عددی میشود که رقم $i$-ام آن در مبنای دو در صورتی برابر با ۱ است که رقم $i$-ام $x$ و $y$ در مبنای دو برابر با ۱ باشد.
میلاد و پارسا را دیگر بکشیدشان هم دست به کیبورد نمیزنند پس شما باید کدی بزنید که با گرفتن دنباله کمترین تعداد مراحل را چاپ کند.
تضمین میشود که حتما میتوانیم همه اعداد دنباله ورودی را بعد از انجام تعدادی مرحله صفر کنیم.
ورودی
در خط اول عدد $n$ که طول دنباله است داده میشود. در خط بعدی $n$ عدد به شما داده میشود که عدد $i$-ام همان $a_i$ است. $$ 1 \le n \le 65\ 536 $$ $$ 0 \le a_i < 65\ 536 $$
خروجی
یک عدد چاپ کنید که برابر کمترین تعداد مراحلی است که لازم است تا همهی اعداد را صفر کنیم.
مثال
ورودی نمونه ۱
2
6242 50840
خروجی نمونه ۱
2
ورودی نمونه ۲
3
3 5 6
خروجی نمونه ۲
4
ارسال پاسخ برای این سؤال