একটি পাথে n ব্লক আছে। একটি ওয়ার্কার রঙিন টাইল বिछায়। যদি ব্লক নম্বর ৪ বা ২ দিয়ে বিভাজ্য হয় কিন্তু ৪২ দিয়ে না, তবে সেখানে টাইল দেয়। k সংখ্যক টাইল থাকলে সে কত ব্লক কভার করতে পারবে তা বের করতে হবে।
উদাহরণ
ইনপুট: k = 16
আউটপুট: 32
সমাধান পদ্ধতি
MOD = 10⁹ + 7quotient := k // 20remainder := k % 20- যদি
remainder == 0: রিটার্ন(42 * quotient - 2) % MOD - অন্যথায়: রিটার্ন
(42 * quotient + 2 * remainder) % MOD
প্যাটার্ন: প্রতিটি ২০টি টাইলে ৪২ ব্লক কভার হয় (৪২-কে বাদ দিয়ে)।
পাইথন ইমপ্লিমেন্টেশন
def solve(k):
MOD = 10**9 + 7
quotient = k // 20
remainder = k % 20
if remainder == 0:
return (42 * quotient - 2) % MOD
else:
return (42 * quotient + 2 * remainder) % MOD
# টেস্ট
print(solve(16)) # আউটপুট: 32
ইনপুট
16
আউটপুট
32