একটি নির্দেশিত গ্রাফ দেওয়া হয়েছে, দীর্ঘতম চক্র আউটপুট।
বিধি
- যে কোনও যুক্তিসঙ্গত ইনপুট ফর্ম্যাট অনুমোদিত (যেমন প্রান্ত তালিকা, সংযোগ ম্যাট্রিক্স)।
- লেবেলগুলি গুরুত্বপূর্ণ নয়, সুতরাং আপনার প্রয়োজনীয় লেবেলগুলি এবং / অথবা ইচ্ছাগুলির উপরে আপনি কোনও বিধিনিষেধ আরোপ করতে পারেন, যতক্ষণ না সেগুলিতে ইনপুটটিতে প্রদত্ত অতিরিক্ত তথ্য না থাকে (যেমন আপনার চক্রের নোডগুলি প্রয়োজন হয় না পূর্ণসংখ্যা সহ লেবেলযুক্ত এবং অন্যান্য নোডগুলিকে বর্ণমালাযুক্ত স্ট্রিং সহ লেবেলযুক্ত)।
- একটি চক্র হ'ল নোডগুলির ক্রম যা সমস্ত সংযুক্ত থাকে এবং কোনও নোডের পুনরাবৃত্তি হয় না
[1, 2, 3, 1]
, চক্রের শুরু এবং শেষ ( একটি চক্র, তবে[1, 2, 3, 2, 1]
তা নয়) ব্যতীত অন্য কোনও নোডের পুনরাবৃত্তি হয় না। - যদি গ্রাফটি অ্যাসাইক্লিক হয় তবে দীর্ঘতম চক্রের দৈর্ঘ্য 0 থাকে এবং সুতরাং একটি খালি আউটপুট পাওয়া যায় (উদাঃ খালি তালিকা, কোনও আউটপুট মোটেও নয়)।
- চক্রের নোডের তালিকার শেষে প্রথম নোডটি পুনরাবৃত্তি করা alচ্ছিক (
[1, 2, 3, 1]
এবং[1, 2, 3]
একই চক্রকে বোঝান)। - যদি একই দৈর্ঘ্যের একাধিক চক্র থাকে তবে যে কোনও একটি বা সমস্তই আউটপুট হতে পারে।
- বিল্টিনগুলি অনুমোদিত, তবে যদি আপনার সমাধানটি একটি ব্যবহার করে তবে আপনাকে বিকল্প বিকল্প সমাধান অন্তর্ভুক্ত করতে উত্সাহিত করা হবে যা ক্ষুদ্রতর বিল্টিনগুলি ব্যবহার করে না (যেমন একটি বিল্টিন যা সমস্ত চক্রকে আউটপুট করে)। যাইহোক, বিকল্প সমাধানটি আপনার স্কোরের দিকে মোটেই গণনা করবে না, সুতরাং এটি সম্পূর্ণ alচ্ছিক।
পরীক্ষার মামলা
এই পরীক্ষার ক্ষেত্রে ইনপুটটি প্রান্তগুলির একটি তালিকা হিসাবে দেওয়া হয় (যেখানে প্রথম উপাদানটি উত্স নোড এবং দ্বিতীয় উপাদানটি গন্তব্য নোড) এবং আউটপুটটি প্রথম / শেষ নোডের পুনরাবৃত্তি ছাড়াই নোডের একটি তালিকা।
[(0, 0), (0, 1)] -> [0]
[(0, 1), (1, 2)] -> []
[(0, 1), (1, 0)] -> [0, 1]
[(0, 1), (1, 2), (1, 3), (2, 4), (4, 5), (5, 1)] -> [1, 2, 4, 5]
[(0, 1), (0, 2), (1, 3), (2, 4), (3, 0), (4, 6), (6, 8), (8, 0)] -> [0, 2, 4, 6, 8]
[(0, 0), (0, 8), (0, 2), (0, 3), (0, 9), (1, 0), (1, 1), (1, 6), (1, 7), (1, 8), (1, 9), (2, 1), (2, 3), (2, 4), (2, 5), (3, 8), (3, 1), (3, 6), (3, 7), (4, 1), (4, 3), (4, 4), (4, 5), (4, 6), (4, 8), (5, 0), (5, 8), (5, 4), (6, 0), (6, 1), (6, 2), (6, 3), (6, 4), (6, 5), (6, 6), (6, 7), (6, 9), (7, 0), (7, 1), (7, 2), (7, 3), (7, 4), (7, 5), (7, 8), (7, 9), (8, 0), (8, 1), (8, 2), (8, 5), (8, 9), (9, 1), (9, 2), (9, 3), (9, 4), (9, 5), (9, 6)] -> [0, 9, 6, 7, 8, 2, 5, 4, 3, 1]
[(0, 0), (0, 2), (0, 4), (0, 5), (0, 7), (0, 9), (0, 11), (1, 2), (1, 4), (1, 5), (1, 8), (1, 9), (1, 10), (2, 0), (2, 1), (2, 3), (2, 4), (2, 5), (2, 6), (3, 0), (3, 1), (3, 5), (3, 6), (3, 7), (3, 8), (3, 9), (3, 11), (4, 1), (4, 3), (4, 7), (4, 8), (4, 9), (4, 10), (4, 11), (5, 0), (5, 4), (5, 6), (5, 7), (5, 8), (5, 11), (6, 0), (6, 8), (6, 10), (6, 3), (6, 9), (7, 8), (7, 9), (7, 2), (7, 4), (7, 5), (8, 8), (8, 9), (8, 2), (8, 4), (8, 7), (9, 0), (9, 1), (9, 2), (9, 3), (9, 6), (9, 10), (9, 11), (10, 8), (10, 3), (10, 5), (10, 6), (11, 2), (11, 4), (11, 5), (11, 9), (11, 10), (11, 11)] -> [0, 11, 10, 6, 9, 3, 8, 7, 5, 4, 1, 2]