- محدودیت زمان: ۱ ثانیه
- محدودیت حافظه: ۲۵۶ مگابایت
باقر میخواهد $n$ نامه برای $m$ شرکت مختلف بفرستد. نام این شرکتها را با اعداد $1, 2, \dots, m ,$ نمایش میدهیم.
باید نامهی اول به شرکت $l_1$، نامه دوم به شرکت $l_2$ و... نامه $n$ام به شرکت $l_n$ ارسال شود. به عبارت دیگر نامه $i$ام ($1 \leq i \leq n$) باید به شرکت $l_i$ ($1 \leq l_i \leq m$) ارسال شود.
باقر برای ارسال این نامهها، $n$ پاکت تهیه میکند که روی پاکت $i$ام نشانی شرکت $l_i$ نوشته شده است.
باقر به مهدی میگوید که نامه $i$ام را در پاکت $i$ام قرار بده و در صندوق پست بنداز. اما مهدی میخواهد این فرمان را به درستی انجام ندهد و کار را اساسی خراب کند. به همین دلیل تصمیم دارد طوری نامهها را در پاکتها قرار دهد که در هر پاکت دقیقاً یک نامه قرار بگیرد ولی هیچ شرکتی نامه مربوط به خودش را دریافت نکند.
به مهدی کمک کنید تا بررسی کند آیا انجام چنین کاری شدنی است یا نه.
ورودی
در سطر اول ورودی دو عدد صحیح و مثبت $n$ و $m$ که با فاصله از هم جدا شدهاند، داده میشود. $$1 \leq m \leq n \leq 100 , 000$$ در سطر دوم ورودی $n$ عدد صحیح و مثبت $l_1, l_2, \dots, l_n ,$ که با فاصله از هم جدا شده است آمده و شرکت مقصد نامه $i$ام را نشان میدهد. $$1 \leq l_i \leq m$$
تضمین میشود که هر کدام از اعداد $1, 2, \dots, m ,$ حداقل یکبار در این دنباله ظاهر شدهاند.
خروجی
در تنها سطر خروجی در صورتی که میتوان طوری نامهها را در پاکتها گذاشت بهطوری که هیچنامهای به شرکت مربوط به خودش نرسد، YES
و در غیر این صورت NO
چاپ کنید.
توجه کنید سیستم داوری به بزرگ و کوچک بودن حروف حساس است.
مثال
ورودی نمونه ۱
3 1
1 1 1
خروجی نمونه ۱
NO
همه نامهها به شرکت ۱ است پس همه پاکتها هم آدرس شرکت ۱ را دارند پس هر جایگشتی از نامهها را که در پاکتها قرار دهیم، همه نامهها به شرکت ۱ میرسد و مهدی به هدفش نمیرسد.
ورودی نمونه ۲
4 4
4 1 2 3
خروجی نمونه ۲
YES
چهار نامه برای شرکتهای ۱ و ۲ و ۳ و ۴ و چهار پاکت با آدرس شرکتهای ۱ و ۲ و ۳ و ۴ داریم. نامه شرکت ۱ را در پاکت شرکت ۲ و نامه شرکت ۲ را در پاکت شرکت ۱ قرار میدهیم. همچنین نامه شرکت ۳ را در پاکت شرکت ۴ و نامه شرکت ۴ را در پاکت شرکت ۳ قرار میدهیم. به این ترتیب هیچنامهای به شرکت مربوط به خود نمیرسد و مهدی به هدفش میرسد.
ارسال پاسخ برای این سؤال