এই সমস্যায়, আমাদের দুটি সংখ্যা K এবং D দেওয়া হয়েছে। আমাদের কাজ হল k সংখ্যার সংখ্যা প্রিন্ট করা এবং যার ডিজিটাল রুট D-এর সমান।
ডিজিটাল রুট একটি একক-সংখ্যার মান যা সংখ্যার সংখ্যাগুলির পুনরাবৃত্তিমূলক যোগের ফলাফল যতক্ষণ না একটি একক-অঙ্কের সংখ্যায় পৌঁছায়। একটি ডিজিটাল যোগফল হিসাবেও পরিচিত৷
৷সমস্যাটি বোঝার জন্য একটি উদাহরণ দেওয়া যাক,
Input: D = 5 , K = 6 Output: 60000
এই সমস্যাটি সমাধান করার জন্য, আমরা D সংখ্যার পরে শূন্যের ট্রায়াল ব্যবহার করব। আমাদের সংখ্যা হবে {D000..(k-1 বার)} . এটি আমাদের সমস্যার একটি সহজ এবং মার্জিত সমাধান যা কম জটিলও নয়৷
উদাহরণ
আমাদের সমাধানের বাস্তবায়ন দেখানোর জন্য প্রোগ্রাম,
#include <bits/stdc++.h>
using namespace std;
void printKdigitNumber(int k, int d) {
if (d == 0 && k != 1)
cout << "-1";
else {
cout << d;
k--;
while (k--)
cout << "0";
}
}
int main() {
int K=6, D=5;
cout<<K<<" digit number with digital Root = "<<D<<" is : ";
printKdigitNumber(K, D);
return 0;
} আউটপুট
6 digit number with digital Root = 5 is : 500000