অঙ্ক সেট {০,১,২,৩,৪,৫} দিয়ে বনানো সংখ্যাগুলো: ০, ১, ২, ৩, ৪, ৫, ১০, ১১, ১২, ১৩, ১৪, ১৫, ২০, ...
প্যাট্রন: প্রতিটি সংখ্যা = পূর্বের সংখ্যা × ১০ + নতুন অঙ্ক (০-৫)।
উদাহরণ
ইনপুট: n = 7 → আউটপুট: 10 (৭তম সংখ্যা, ০-বেস্ড ইনডেক্সিং)
অ্যালগরিদম
- ভেক্টরে ০-৫ পুশ করুন।
- প্রতিটি বিদ্যমান সংখ্যার সাথে ০-৫ যোগ করে নতুন সংখ্যা বানান।
- n-তম উপাদান ফেরত দিন।
সি++ ইমপ্লিমেন্টেশন
#include <bits/stdc++.h>
using namespace std;
int findNthNumber(int n) {
vector numbers;
for (int i = 0; i < 6; i++) numbers.push_back(i);
for (int i = 0; i <= n / 6; i++) {
for (int j = 0; j < 6; j++) {
if (numbers[i] * 10 != 0)
numbers.push_back(numbers[i] * 10 + numbers[j]);
}
}
return numbers[n - 1];
}
int main() {
int n = 7;
cout << findNthNumber(n) << endl; // 10
return 0;
}
আউটপুট
10