Processing math: 100%

المپدیا

دانش‌نامه‌ی المپیاد کامپیوتر ایران

ابزار کاربر

ابزار سایت


سوالات المپیاد:دوره ی تابستان:دوره ی ۹:عملی:سوال ۱۵

مسیرهای متقاطع و ...

گراف ساده، وزن‌دار و بدون جهت G و رئوس s1,t1,s2,t2 داده شده است. پس از خواندن فایل ورودی فایل‌های A.Txt،B.Txt،C.Txt و D.Txt را مطابق دستور زیر تولید کنید!

ورودي

در سطر اول فایل ورودی n، تعداد رئوس و اعداد s1,t1,s2,t2 (به ترتیب و با شروع از s1) نوشته شده و در n1 سطر بعدی نیمه‌ی پایین ماتریس مجاورت G آمده است (همه‌ی وزن‌ها اعداد طبیعی‌اند و صفر نشانه‌ی عدم وجود یال است در ضمن n100).

خروجي

  1. اندازه‌ی کوچک‌ترین زیردرخت فراگیر را به دست آورید که در آن حداقل یکی از رئوس s1,t1,s2,t2 برگ باشد. خروجی این بخش فایل A.Txt است که در سطراول آن اندازه‌ی این درخت را می‌نویسید و n1 سطر بعدی هر یک شامل دو عدد است که دو سر یک یال این زیردرخت است.
  2. در سطر اول فایل B.Txt اندازه‌ی کوتاه‌ترین مسیر بین s1 و t1 و در سطر دوم آن اندازه‌ی کوتاه‌ترین مسیر بین s2 و t2‌ را بنویسید.
  3. می‌خواهیم راسی مانند a را بیابیم که یک مسیر کمینه از s1 به t1 و یک مسیر کمینه از s2 به t2 موجود باشد که هر دو از a‌بگذرد و در ضمن فاصله‌ی s1 و s2 از a‌در این مسیر برابر باشد. خروجی این بخش فایل C.Txt است که در سطر اول آن a را می‌نویسید.
  4. مسیرهای قسمت قبل را در سطر اول و دوم فایل D.Txt بنویسید. هر مسیر را با دنباله‌ای از رئوس مشخص کنید.

توجه:فرض کنید همه‌ی داده‌ها جواب دارد و لطفا برنامه‌های خود را با داده‌های مختلف امتحان کنید!

ورودي و خروجي نمونه

ورودي نمونه A.Txt B.Txt C.Txt D.Txt
5 4 1 2 3
5
4 0
0 1 2
3 2 1 2
7
2 4
4 5
5 3
5 1
5
3
5 4 5 1
2 5 3

ابزار صفحه