لینک‌های مفید برای شرکت در مسابقه:

می‌توانید سوال‌های خود را از بخش «سوال بپرسید» مطرح کنید.

گراف اویلری


  • محدودیت زمان: ۱ ثانیه
  • محدودیت حافظه: ۲۵۶ مگابایت

فرض کنید GG یک گراف ساده nn راسی mm یالی است که راس‌های آن از 11 تا nn شماره گذاری شده است.

به یک گراف «اویلری» می‌گوییم اگر «گذری» داشته باشد که هر یال GG، دقیقا یکبار در آن آمده باشد.

منظور از یک گذر، دنباله‌ای از یال‌ها مثل e1,e2,,eke_1, e_2, \dots, e_k است که به ازای هر 2ik2 \leq i \leq k داشته باشیم ei1eie_{i - 1} \cap e_i \neq \emptyset.

یک گراف به شما داده می‌شود، و از شما می‌خواهیم بررسی کنید آیا این گراف اویلری است یا نه.

ورودی🔗

در سطر اول ورودی دو عدد صحیح nn و mm که با یک فاصله از هم جدا شده‌اند آمده است که به ترتیب نشان‌دهنده‌ی تعداد راس‌ها و یال‌های گراف GG است.

1n1000001 \leq n \leq 100 \, 000 0mmin{n(n1)2,100000}0 \leq m \leq \min\{\frac{n(n - 1)}{2},100 \, 000\}

در mm سطر بعدی دو عدد uiu_i و viv_i که با یک فاصله از هم جدا شده‌اند آمده است که نشان‌دهنده‌ی وجود یال uiviu_i v_i در گراف GG است.

1uivin1 \leq u_i \neq v_i \leq n

تضمین می‌شود گراف داده شده ساده است. یعنی بین هر دو راس حداکثر یک یال آمده است.

خروجی🔗

در تنها سطر خروجی در صورت اویلری بودن گراف GG رشته YES و در غیر این‌ صورت رشته NO چاپ کنید.

مثال🔗

ورودی نمونه ۱🔗

3 3
1 2
1 3
2 3
Plain text

خروجی نمونه ۱🔗

YES
Plain text

بله، چون دنباله زیر وجود دارد: {1,2},{2,3},{1,3}\{1, 2\}, \{2, 3\}, \{1, 3\}

ورودی نمونه ۲🔗

4 2
1 2
3 4
Plain text

خروجی نمونه ۲🔗

NO
Plain text

خیر، چون هر این گراف تنها دو یال دارد که هیچ اشتراکی ندارند. پس نمی‌توان دنباله‌ای ساخت که هر دو یال در آن حضور داشته باشند و هر دو یال متوالی اشتراکی ناتهی داشته باشند.

ورودی نمونه ۳🔗

5 5
1 2
2 3
3 4
4 5
5 3
Plain text

خروجی نمونه ۳🔗

YES
Plain text

بله، چون دنباله زیر وجود دارد: {1,2}{2,3},{3,4},{4,5},{3,5}\{1, 2\} \{2, 3\}, \{3, 4\}, \{4, 5\}, \{3, 5\}

ارسال پاسخ برای این سؤال
در حال حاضر شما دسترسی ندارید.