কম্পিউটার

C++ এ বিয়ারের বোতল


ধরুন আমাদের একটি সংখ্যা n আছে। এখানে n সম্পূর্ণ বিয়ারের বোতল নির্দেশ করে। যদি আমরা 1টি সম্পূর্ণ বিয়ারের বোতলের জন্য 3টি খালি বিয়ারের বোতল বিনিময় করতে পারি, তাহলে আমরা কতগুলি বিয়ার বোতল পান করতে পারি তা খুঁজে বের করতে হবে।

সুতরাং, যদি ইনপুট 10 এর মত হয়, তাহলে আউটপুট 14 হবে।

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • একটি ফাংশন সল্ভ() সংজ্ঞায়িত করুন, এটি n,

    লাগবে
  • ret :=0

  • যখন n>=3, −

    করুন
    • q :=n / 3

    • ret :=ret + q * 3

    • n :=n - q * 3

    • n :=n + q

  • ret :=ret + n

  • রিটার্ন রিটার্ন

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

উদাহরণ

#include <bits/stdc++.h>
using namespace std;
class Solution {
   public:
   int solve(int n) {
      int ret = 0;
      while(n >= 3){
         int q = n / 3;
         ret += q * 3;
         n -= q * 3;
         n += q;
      }
      ret += n;
      return ret;
   }
};
main() {
   Solution ob;
   cout << ob.solve(10);
}

ইনপুট

10

আউটপুট

14

  1. C++ এ গেম ভি জাম্প করুন

  2. C++ এ সুন্দর অ্যারে

  3. C++-এ K ডিজিটগুলি সরান

  4. C++ এ চারটি বিভাজক