মান লেট আমরা নিচের মতো একটি সংখ্যা ত্রিভুজ জেনারেট করছি
1 1 1 1 1 2 3 2 1 1 3 6 7 6 3 1
যেখানে প্রতিটি সারির উপাদানগুলো উপরের তিনটি সংখ্যা যোগ করে জেনারেট করা হয়। এখন যদি আমাদের লাইন নম্বর l থাকে। আমাদের সেটার প্রথম জোড় সংখ্যার পজিশন বের করতে হবে। পজিশন মান ১ থেকে শুরু হয়।
তাহলে, যদি ইনপুট হয় l = 5, তবে আউটপুট হবে 2
1 1 1 1 1 2 3 2 1 1 3 6 7 6 3 1 1 4 10 16 19 16 10 4 1
এটি সমাধান করতে, আমরা নিচের পদক্ষেপগুলো অনুসরণ করব −
- যদি l ১-এর সমান হয় অথবা l ২-এর সমান হয়, তবে
- -1 রিটার্ন করুন
- অন্যথায় যখন l mod 2 ০-এর সমান হয়, তবে
- যদি l mod 4 ০-এর সমান হয়, তবে
- 3 রিটার্ন করুন
- অন্যথায়,
- 4 রিটার্ন করুন
- যদি l mod 4 ০-এর সমান হয়, তবে
- অন্যথায়,
- 2 রিটার্ন করুন
উদাহরণ
বेहतर বোঝার জন্য নিচের ইমপ্লিমেন্টেশন দেখুন −
def solve(l): if l == 1 or l == 2 : return -1 elif l % 2 == 0: if l % 4 == 0: return 3 else: return 4 else: return 2 l = 5 print(solve(l))
ইনপুট
5
আউটপুট
2