কম্পিউটার

C++ এ পাইপ এবং সিস্টারন


পাইপ এবং সিস্টারন সমস্যা একটি খুব সাধারণ সমস্যা এবং এটি সাধারণত প্রতিযোগিতামূলক পরীক্ষায় অন্তর্ভুক্ত করা হয়। সুতরাং, pipers সম্পর্কিত প্রশ্ন শিখুন এবং সিস্টার্ন গুরুত্বপূর্ণ এবং আপনার জানা উচিত কীভাবে সেগুলি সমাধান করা যায় কারণ এগুলি শেখা খুব কঠিন নয়৷

পাইপ এবং সিস্টারন

এই সমস্যাগুলি এমন পাইপগুলির সাথে জড়িত যেগুলি একটি ট্যাঙ্ক/জলাশয়/কুন্ড ভরাট বা খালি করতে ব্যবহৃত হয়৷

এখানে, পাইপ এর কিছু মৌলিক বিষয় রয়েছে এবং সিস্টার্ন সমস্যা,

  • পাইপগুলি হল ইনলেট পাইপ বা আউটলেট পাইপ। ইনলেট পাইপ ট্যাঙ্ক পূর্ণ করে এবং আউটলেট পাইপ ট্যাঙ্ক খালি করে।

  • যদি একটি পাইপ 'n' ঘন্টার মধ্যে পূর্ণ/খালি হয় এবং ট্যাঙ্কের ক্ষমতা হয় 'c' লিটার। তারপর 1 ঘন্টার মধ্যে c/n লিটার খালি হবে।

  • এখন, যদি কিছু পাইপ ট্যাঙ্ক ভরাট করে এবং কিছু পাইপ ট্যাঙ্ক খালি করে। একসাথে তারা নিম্নলিখিত উপায়ে কাজ করবে,

    1 ঘন্টা =Σ (c/fi) - Σ (c/ej )

    এখানে, fi ট্যাঙ্ক এবং ej পূরণ করতে ith পাইপের সময় লাগে j th দ্বারা নেওয়া সময় ট্যাঙ্ক পূরণ করার জন্য পাইপ।

    এই গণনার চিহ্নটি সমস্ত পাইপের শেষ ফলাফল দেখাবে। ইতিবাচক ট্যাঙ্কটি পূরণ করবে এবং নেতিবাচক ট্যাঙ্কটি খালি করবে।

এখন, আসুন কিছু সমস্যার সমাধান করি যা বিষয়টিকে আরও ভালভাবে বুঝতে সাহায্য করবে,

প্রশ্ন 1

যদি দুটি পাইপ 6 ঘন্টা এবং 4 ঘন্টার মধ্যে আলাদাভাবে একটি ট্যাঙ্ক পূরণ করে। একসাথে খোলা হলে তারা কত সময়ে ট্যাঙ্কটি পূরণ করবে?

সমাধান

এক ঘন্টায় পাইপ A দ্বারা ট্যাঙ্কের অংশ পূর্ণ =1/6.

এক ঘন্টায় পাইপ বি দ্বারা ট্যাঙ্কের অংশ পূর্ণ =1/4।

ট্যাঙ্কের কিছু অংশ পাইপ A এবং B দ্বারা এক ঘন্টায় পূরণ করুন =1/6 + 1/4 =5/12৷

A এবং B উভয় দ্বারা ট্যাঙ্কটি পূরণ করার জন্য প্রয়োজনীয় সময় হল 12/5 ঘন্টা।

প্রশ্ন 2

এই দুটি পাইপের মধ্যে ট্যাঙ্কে 3টি পাইপ রয়েছে যা 10 ঘন্টা এবং 15 ঘন্টা আলাদাভাবে ট্যাঙ্কটি পূরণ করে। এবং তৃতীয়, ট্যাঙ্কটি 12 ঘন্টার মধ্যে খালি করে।

যদি তিনটি পাইপ একসাথে খোলা হয়, তাহলে তারা কতক্ষণে ট্যাঙ্কটি পূরণ করবে/খালি হবে?

সমাধান

এক ঘন্টায় পাইপ A দ্বারা ট্যাঙ্কের অংশ পূর্ণ =1/10।

এক ঘন্টায় পাইপ বি দ্বারা ট্যাঙ্কের অংশ পূর্ণ =1/15।

এক ঘন্টায় পাইপ সি দ্বারা ট্যাঙ্কের অংশ খালি করা হয়েছে =1/12।

ট্যাঙ্কের কিছু অংশ পাইপ A এবং B এবং C দ্বারা এক ঘন্টায় পূরণ/খালি করা =1/10 + 1/15 - 1/12 =5/60 =1/12।

চিহ্নটি ইতিবাচক হওয়ায় ট্যাঙ্কটি পূর্ণ হবে৷

ট্যাঙ্কটি পূরণ করতে সময় লাগে 12 ঘন্টা।

প্রশ্ন 3

একটি ট্যাঙ্কে 2টি ইনলেট পাইপ রয়েছে। দুটি পাইপ একসাথে কাজ করে 6 ঘন্টার মধ্যে ট্যাঙ্কটি পূরণ করে। একা পাইপের কাজ করলে ট্যাঙ্কটি পূরণ করতে 5 ঘন্টা কম লাগে। কত সময়ের মধ্যে পাইপ 2 একা ট্যাঙ্ক পূরণ করবে।

সমাধান

পাইপ ওয়ানের সময় ধরা যাক t ঘন্টা।

পাইপ দুই দ্বারা নেওয়া সময় হল t+5 ঘন্টা।

ট্যাঙ্কের অংশ এক ঘন্টায় পাইপ দিয়ে ভরা =1/t

ট্যাঙ্কের অংশ এক ঘন্টায় পাইপ দুই দ্বারা পূর্ণ =1/(t+5)

ট্যাঙ্কের অংশ এক এবং দুইটি পাইপ দ্বারা এক ঘন্টায় ভরে =1/t + 1/(t+5) =(2t+5)/t*(t+5)

উভয় পাইপ একসাথে 6 ঘন্টার মধ্যে ট্যাঙ্ক পূরণ করবে।

(2t+5)/t*(t+5) =1/6
12t + 30 = t2 + 5t
0 = t2 + 5t - 12t - 30
t2 - 7t - 30 = 0
t2 - 10t + 3t - 30 = 0
t(t - 10) + 3(t - 10) = 0
(t + 3)(t - 10) = 0
t = 10 hours

পাইপ ওয়ান দ্বারা নেওয়া সময় হল 10 ঘন্টা

পাইপ দুই দ্বারা নেওয়া সময় হল 15 ঘন্টা

প্রশ্ন 4

তিনটি পাইপ A, B এবং C। A 5 ঘন্টার মধ্যে ট্যাঙ্কটি পূরণ করে, B 15 ঘন্টার মধ্যে ট্যাঙ্কটি পূরণ করে এবং তৃতীয় ট্যাঙ্কটি ট্যাঙ্কটি খালি করে। যদি তিনটিই একসাথে খোলা থাকে তবে A এবং B একসাথে খোলার তুলনায় এটি 15 মিনিট অতিরিক্ত সময় নেয়। ট্যাঙ্কটি খালি করতে সি কত সময় নেয়?

সমাধান

ট্যাঙ্কের ক্ষমতা হল LCM(5,15) =15 ইউনিট।

পাইপের কার্যক্ষমতা A =3 ইউনিট/ঘন্টা

পাইপের দক্ষতা B =1 ইউনিট/ঘন্টা

পাইপের দক্ষতা A+B =4 ইউনিট/ঘন্টা

A এবং B ট্যাঙ্কটি পূরণ করতে সময় নেয় =15/4 =3 ঘন্টা 45 মিনিট।

যখন সমস্ত পাইপ খোলা থাকে তখন ট্যাঙ্কটি পূরণ করতে সময় নেওয়া হয় =3 ঘন্টা 45 মিনিট + 15 মিনিট =4 ঘন্টা৷

মোট দক্ষতা হল 15/4 =3.75 ইউনিট প্রতি ঘন্টা

পাইপের দক্ষতা C =পাইপের কার্যক্ষমতা A+B - মোট দক্ষতা =0.25 ইউনিট প্রতি ঘন্টায়।

C =15*0.25 =3 ঘন্টা 45 মিনিট

দ্বারা নেওয়া সময়
  1. C++ এ ডাইনামিক_কাস্ট এবং স্ট্যাটিক_কাস্ট

  2. fmax() এবং fmin() C++ এ

  3. C এবং C++ এর কাঠামোর মধ্যে পার্থক্য

  4. C++ এ ডিলিট() এবং ফ্রি()