علی خلافه


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

علی آقا راننده‌ی اسنپ در شکرستان است. شکرستان، nn تا تقاطع دارد که با mm جاده‌ی یک‌طرفه به هم وصل شده‌اند. علی آقا از شهری خوشش می‌آید که اگر از هر تقاطعی شروع به حرکت کند، نتواند با طی کردن تعدادی جاده برگردد به همان تقاطعی که شروع کرده بود. می‌دانیم که علی آقا از شکرستان خوشش می‌آید. علی آقا مشتری زیادی ندارد؛ برای همین می‌خواهد که از چند تا جاده خلاف جهت معین شده عبور کند تا مشتری بیشتری نصیبش شود. در ضمن علی آقا می‌خواهد حداقل از یک جاده خلاف جهتش عبور کند. از جایی که علی آقا خیلی هم خلاف نیست می‌خواهد کم‌ترین تعداد جاده را خلاف برود. علی آقا تصمیم گرفت که یک سری جاده را برای خلاف‌رفتن انتخاب کند بطوری که از شهری که با عوض کردن جهت جاده‌های انتخاب شده ایجاد می شود خوشش بیاید.

به علی آقا کمک کنید که بداند حداقل جهت چند جاده را باید عوض کند و آن‌ها چه جاده‌هایی هستند.

ورودی🔗

در خط اول دو عدد nn و mm آمده است و در mm خط بعدی مشخصات جاده‌های شکرستان آمده است؛ به گونه‌ای که در خط i+1i+1 ام ورودی دو عدد uiu_i و viv_i آمده‌است که نشان می‌دهد جاده‌ی iiام از uiu_i به viv_i است. تضمین می‌شود بین هیچ دو تقاطع‌ای بیشتر از یک جاده نیست و علی آقا از شکرستان خوشش می‌آید.

1n,m1 000 0001 \le n, m \le 1\ 000\ 000 1viuin 1 \le v_i \neq u_i \le n

خروجی🔗

در خط اول tt کمترین تعداد جاده های لازم که علی آقا باید انتخاب کند را چاپ کنید. در خط tt خط بعدی شماره جاده‌هایی که علی آقا باید انتخاب کند را به هر ترتیبی چاپ کنید. در صورت وجود چند جواب یکی را به دلخواه چاپ کنید.

مثال🔗

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

2 1
1 2
Plain text

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

1
1
Plain text

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

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

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

1
5
Plain text