কম্পিউটার

পাইথনে থ্রেশহোল্ড শতাংশে পৌঁছানোর জন্য প্রয়োজনীয় 5-তারা পর্যালোচনার সংখ্যা গণনা করার প্রোগ্রাম


ধরুন আমাদের কাছে পর্যালোচনা নামক একটি তালিকা এবং একটি প্রান্তিক মান টি আছে। রিভিউতে প্রতিটি আইটেম[i] আছে [x, y] মানে আমার কাছে 5-স্টার রেটিং-এর x নম্বর এবং y সংখ্যক রিভিউ আছে। আমাদের প্রয়োজনীয় ন্যূনতম সংখ্যক অতিরিক্ত 5-স্টার রিভিউ খুঁজে বের করতে হবে যাতে সেই আইটেম তালিকার জন্য 5-তারকা পর্যালোচনার শতাংশ কমপক্ষে t ​​শতাংশ হয়।

সুতরাং, যদি ইনপুটটি রিভিউ =[[3, 4],[1, 2],[4, 6]] থ্রেশহোল্ড =78 এর মত হয়, তাহলে আউটপুট হবে 7, যেমন মোট 8টি 5-স্টার রিভিউ ছিল এবং 12টি পর্যালোচনা। 78% 5-স্টার রিভিউ পেতে, আমাদের আরও 7টি 5-স্টার রিভিউ দরকার।

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

  • a :=0, b :=0

  • প্রতিটি 5-তারকা গণনা c এবং পর্যালোচনা গণনা d এর জন্য, করুন

    • a :=a + c

    • b :=b + d

  • যদি a * 100>=t * b হয়, তাহলে

    • রিটার্ন 0

  • ডেল্টা :=t * b - 100 * a

  • (ডেল্টা +(99 - t))/(100 - t)

    এর রিটার্ন ফ্লোর

উদাহরণ

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

def solve(reviews, t):
   a = 0
   b = 0
   for c, d in reviews:
      a += c
      b += d
   if a * 100 >= t * b:
      return 0
   delta = t * b - 100 * a
   return (delta + (99 - t)) // (100 - t)

reviews = [
   [3, 4],
   [1, 2],
   [4, 6]
]
t = 78
print(solve(reviews, t))

ইনপুট

[[3, 4], [1, 2],[4, 6] ],78

আউটপুট

7

  1. পাইথনে সম্ভাব্য নম্র ম্যাট্রিক্সের সংখ্যা গণনা করার প্রোগ্রাম

  2. পাইথনে s-এ স্বতন্ত্র সাবস্ট্রিংয়ের সংখ্যা গণনা করার জন্য প্রোগ্রাম

  3. পাইথনে n নোড সহ BST সংখ্যা গণনা করার প্রোগ্রাম

  4. পাইথন প্রোগ্রাম একটি সংখ্যার ফ্যাক্টোরিয়ালের অনুগামী শূন্য গণনা করতে