সমস্যা বিবৃতি
রেলওয়ে স্টেশনে পৌঁছানো সমস্ত ট্রেনের আগমন এবং প্রস্থানের সময় দেওয়া, কাজ হল রেলওয়ে স্টেশনের জন্য প্রয়োজনীয় ন্যূনতম সংখ্যক প্ল্যাটফর্ম খুঁজে বের করা যাতে কোনো ট্রেন অপেক্ষা না করে।
আমাদেরকে দুটি অ্যারে দেওয়া হয়েছে যা থেমে যাওয়া ট্রেনের আগমন এবং প্রস্থানের সময় উপস্থাপন করে৷
নীচের ইনপুটের জন্য, আমাদের কমপক্ষে 3টি প্ল্যাটফর্মের প্রয়োজন -
ট্রেন | আগমনের সময় | প্রস্থানের সময় |
---|---|---|
ট্রেন-১ | 09:00 | 09:15 |
ট্রেন-২ | 09:35 | 11:45 |
ট্রেন-৩ | 09:40 | 11:05 |
ট্রেন-৪ | 11:00 | 12:00 |
ট্রেন-৫ | 14:30 | 18:15 | ৷
ট্রেন-6 | 18:00 | 19:00 |
অ্যালগরিদম
<পূর্ব>1. আগমন এবং প্রস্থানের সময় অ্যারেগুলিকে আরোহী ক্রমানুসারে সাজান। যে ট্রেনগুলি এসেছে, কিন্তু ছেড়ে যায়নি সেগুলির ট্র্যাক রাখার জন্য যে কোনও সময় ট্রেনের সংখ্যা ট্রেস করুন৷উদাহরণ
#include#include #define SIZE(arr) (sizeof(arr) / sizeof(arr[0])) namespace ব্যবহার করে std;int getPlatformCount(int *আগমন, int *প্রস্থান, int n ){ sort(আগমন, আগমন + n); সাজান (প্রস্থান, প্রস্থান + n); int platformCnt =1; int ফলাফল =1; int i =1; int j =0; যখন (i ফলাফল) { ফলাফল =platformCnt; } } অন্য { --platformCnt; ++j; } } রিটার্ন ফলাফল;} int main(){ int arrival[] ={900, 935, 940, 1100, 1430, 1800}; int departure[] ={915, 1145, 1105, 1200, 1815, 1900}; cout <<"ন্যূনতম প্রয়োজনীয় প্ল্যাটফর্ম =" < আউটপুট
আপনি যখন উপরের প্রোগ্রামটি কম্পাইল এবং এক্সিকিউট করবেন। এটি নিম্নলিখিত আউটপুট −
তৈরি করেসর্বনিম্ন প্রয়োজনীয় প্ল্যাটফর্ম =3