প্রত্যাশিত মান (এক্সপেক্টেড ভ্যালু) সম্পর্কে জানতে এই আর্টিকেলটি পড়তে পার ।

সাবটাস্ক 1:
প্রথমে, মগগুলির ধারণক্ষমতার এ্যারেকে নন-ডিক্রিজিং ভাবে সর্ট করি । এখন, আমরা যদি কোনো কাস্টমারকে ithi^{th} মগ দেই, তাহলে ভবিষ্যতের কাস্টমারদের জন্য কেবলমাত্র [i+1,n][i + 1, n] রেঞ্জের ভ্যালিড মগগুলি ব্যবহার করতে পারব । 1st1^{st} কাস্টমারের জন্য কোনো মগ ii বাছাই করার সম্ভাবনা অবশ্যই 1n\frac{1}{n} । এখন, ধরা যাক, জগে বর্তমানে পানি আছে cc লিটার এবং আমরা কাস্টমারকে ithi^{th} মগ দিব । সুতরাং, বর্তমান স্টেট থেকে শেষ স্টেটগুলো পর্যন্ত কাস্টমারকে যতবার সার্ভ করা যাবে, তার প্রত্যাশিত মান হল:

E(i,c)=1+1(rl+1)×(E(l,cai)+E(l+1,cai)++E(r,cai))E(i,c) = 1 + \frac{1}{(r-l+1)} \times (E(l, c-a_i) + E(l+1, c-a_i) + … + E(r, c-a_i)),

যেখানে ll হল সবচেয়ে বামের ইনডেক্স যাতে ai<alcaia_i < a_l\leq c-a_i এবং rr হল সবচেয়ে ডানের ইনডেক্স যাতে ai<arcaia_i < a_r \leq c-a_iE(i,c)E(i, c) ফাইনাল স্টেট হলে E(i,c)=1E(i,c) = 1

উপরের রিলেশন থেকে আমরা সহজেই একটি ডাইনামিক প্রোগ্রামিং সমাধান তৈরি করতে পারি ।
সাবটাস্ক 1 এর সলিউশনঃ https://ideone.com/9eZgDh
কমপ্লেক্সিটিঃ O(n2×c)O(n^2\times c)

সাবটাস্ক 2:
সাবটাস্ক 2 এর জন্য আমাদের সাবটাস্ক 1 এর আইডিয়া অপটিমাইজ করতে হবে । উপরের রিলেশন থেকে আমরা দেখতে পাচ্ছি যে একটি স্টেট E(i,c)E(i, c) থেকে আমরা শুধুমাত্র caic-a_i লিটার পানি নিয়ে পরবর্তী স্টেটগুলোয় যেতে পারি । আমরা যদি caic-a_i লিটার পানি নিয়ে যাওয়া পরবর্তী স্টেটগুলোর সংখ্যা এবং প্রত্যাশিত মানগুলির যোগফল জানি, তবে আমরা সহজেই E(i,c)E(i, c) বের করতে পারব । ধরা যাক, kk লিটার পানি নিয়ে পরবর্তী স্টেটগুলোতে গেলে cntkcnt_k আমাদের কাঙ্ক্ষিত সংখ্যা এবং sumksum_k আমাদের কাঙ্ক্ষিত প্রত্যাশিত মানগুলির যোগফল। তাহলে আমরা লিখতে পারি,

E(i,c)=1+1cntcai×sumcaiE(i,c) = 1 + \frac{1}{cnt_{c-a_i}} \times sum_{c-a_i}

cntkcnt_k এবং sumksum_k, nthn^{th} ইনডেক্স থেকে 1st1^{st} ইনডেক্সে ইটারেট করতে করতে গণনা করা যাবে । আমাদের একই ক্যাপাসিটির মগগুলো একসাথে প্রক্রিয়া করতে হবে যাতে একই ক্যাপাসিটির মগগুলো পরবর্তী স্টেট হিসাবে বিবেচ্য না হয় । আরও ভাল করে বুঝতে সলিউশন দেখ ।

সলিউশন: https://ideone.com/Nog7Jm
কমলেক্সিটি: O(n×c)O(n\times c)

Statistics

25% Solution Ratio
mdarikrayhanEarliest, Apr '23
mdarikrayhanFastest, 0.1s
nusuBotLightest, 4.9 MB
mdarikrayhanShortest, 1087B
Toph uses cookies. By continuing you agree to our Cookie Policy.