شرکت عمرانی سرداد


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

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

در پروژه‌ای که به آقا فیروز داده‌ شده، nn روستا وجود دارد که از 11 تا nn شماره‌گذاری شده‌اند. همچنین یک لیست شامل n1n - 1 جاده به آقا فیروز داده‌ شده که هر جاده دوتا از روستاها را به هم وصل می‌کند. تضمین می‌شود پس از احداث جاده‌ها می‌توان با پیمایش تعدادی جاده از هر روستایی به هر روستای دیگری رفت.

همچنین در هر روستا، یک سوله وجود دارد که درون سوله واقع در روستای شماره ii، دقیقا ii تن خاک وجود دارد. همچنین می‌دانیم برای احداث جاده‌ای بین دو روستای uu و vv، باید دقیقا از یکی از این دو روستا، دقیقا ۱ تن خاک برداشت.

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

توجه کنید از آن‌جا که جواب ممکن است بزرگ باشد، جواب را به باقیمانده 109+710^9 + 7 خروجی دهید.

ورودی🔗

در خط اول برنامه عدد nn به شما داده می‌شود که بیانگر تعداد روستاها می‌باشد.

در n1n - 1 خط بعدی، در هر خط دو عدد uiu_i و viv_i می‌آید و بیانگر این است که جاده‌ای بین دو روستا با شماره‌های uiu_i و viv_i باید احداث شود.

تضمین می‌شود پس از احداث این n1n - 1 جاده، از هر روستایی با پیمایش جاده‌ها می‌توان به هر روستای دیگری رفت. 1n1 000 0001 \le n \le 1\ 000\ 000 1ui,vin1 \le u_i, v_i \le n

خروجی🔗

در تنها خط خروجی، تعداد روش‌های مختلف انتخاب سوله‌ها برای برداشتن خاک را به باقیمانده 109+710^9 + 7 بگویید.

مثال🔗

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

3
1 2
1 3
Plain text

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

3
Plain text

می‌توان برای احداث جاده‌ی اول، از روستای شماره ۲ خاک برداشت، که در این‌صورت برای احداث جاده دوم می‌توان هم از روستای شماره ۱ و هم از روستای شماره ۳ خاک برداشت. همچنین اگر برای احداث جاده‌ی اول، از روستای شماره ۱ خاک برداریم، چون سوله واقع در روستای ۱، دقیقا یک تن خاک داشت، پس دیگر خاکی در آن باقی نمی‌ماند و مجبوریم از سوله واقع در روستای ۳ خاک برداریم.

پس در کل به ۳ روش می‌توان سوله‌ها را برای برداشتن خاک انتخاب کرد.

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

4
1 2
2 3
2 4
Plain text

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

7
Plain text

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

4
2 3
2 1
2 4
Plain text

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

7
Plain text