ধরুন আমাদের একটি সংখ্যা n আছে, আমাদের কনেল সিকোয়েন্সের nম পদটি বের করতে হবে। Connellsequence নিম্নরূপ:1. প্রথম বিজোড় পূর্ণসংখ্যা নিন:1 2. পরের দুটি জোড় পূর্ণসংখ্যা নিন 2, 4 3. তারপর পরবর্তী তিনটি বিজোড় পূর্ণসংখ্যা 5, 7, 9 4 নিন। এর পর পরের চারটি জোড় পূর্ণসংখ্যা 10, 12 নিন , 14,16 ইত্যাদি।
সুতরাং, যদি ইনপুট 12 এর মত হয়, তাহলে আউটপুট হবে 21
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
- i :=1
- এর ভাগফল (i *(i + 1) / 2)
- i :=i + 1
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
উদাহরণ
class Solution: def solve(self, n): i = 1 while (i * (i + 1) // 2) < n + 1: i += 1 idx = i * (i + 1) // 2 num = i**2 return num - 2 * (idx - n - 1) ob = Solution() print(ob.solve(12))
ইনপুট
12
আউটপুট
21