এক বল ফ্যাক্টরিতে nটি বল আছে, নম্বর l থেকে r (ইনক্লूसিভ)। অনন্ত সংখ্যক বক্স আছে 1 থেকে অনন্ত পর্যন্ত নম্বর দিয়ে। প্রতিটি বলকে তার নম্বরের অঙ্কগুলোর যোগফল সমান নম্বরযুক্ত বক্সে রাখা হয় (যেমন: বল ১২৩ → বক্স ১+২+৩=৬)। l এবং r দেওয়া থাকলে, সবচেয়ে বেশি বল থাকা বক্সে কতগুলো বল আছে সেটা বের করতে হবে।
ইনপুট: l = 15, r = 25 → আউটপুট: 2। বক্স ৬ এবং ৭-এ যোয়ই সর্বাধিক ২টি করে বল।
সমাধানের ধাপসমূহ
dict := একটি ম্যাপ (বক্স নম্বর → বলের সংখ্যা)
i = l থেকে r পর্যন্ত লুপ:
- total := i-এর অঙ্কগুলোর যোগফল
- dict[total]++
dict-এ সবচেয়ে বড় মানটি রিটার্ন করুন
উদাহরণ (Python)
def solve(l, r):
dict = {}
for i in range(l, r + 1):
total = 0
for j in str(i):
total += int(j)
if total not in dict:
dict[total] = 0
dict[total] += 1
return max(dict.values())
l = 15
r = 25
print(solve(l, r))
ইনপুট
15, 25
আউটপুট
2