কম্পিউটার

C++-এ X-তম ক্ষুদ্রতম সাব-স্ট্রিং অভিধানিকভাবে উত্তর দেওয়ার জন্য প্রশ্ন


এই সমস্যায়, আমাদের একটি স্ট্রিং স্ট্র এবং Q প্রশ্ন দেওয়া হয়েছে। প্রতিটি ক্যোয়ারীতে একটি নম্বর X থাকে। আমাদের কাজ হল C++ এ X-তম ক্ষুদ্রতম সাব-স্ট্রিং-এর আভিধানিকভাবে উত্তর দেওয়ার জন্য প্রশ্নের সমাধান করার জন্য একটি প্রোগ্রাম তৈরি করা।

সমস্যা বর্ণনা

আমাদের প্রতিটি প্রশ্নের জন্য Xth আভিধানিকভাবে সবচেয়ে ছোট সাবস্ট্রিং খুঁজে বের করতে হবে, অর্থাৎ বর্ণানুক্রমিক ক্রম সাজানোর উপর ভিত্তি করে আমাদের Xth সাবস্ট্রিং খুঁজে বের করতে হবে।

সমস্যাটি বোঝার জন্য একটি উদাহরণ নেওয়া যাক,

ইনপুট :str =“বিন্দু”

Q =4 প্রশ্ন ={4, 7, 2, 13}

আউটপুট: n, oi, in, poin

ব্যাখ্যা

আভিধানিক ক্রমানুসারে str-এর সমস্ত সাবস্ট্রিং হল−

i, in, int, n, nt, o, oi, oin, oint, p, po, poi, poin, point, t

৪র্থ সাব-স্ট্রিং - n

৭ম উপ-স্ট্রিং - oi

২য় সাব-স্ট্রিং - ইন

13তম উপ-স্ট্রিং - পয়েন্ট

সমাধান পদ্ধতি

একটি সহজ সমাধান হল স্ট্রিংয়ের সম্ভাব্য সমস্ত সাবস্ট্রিং তৈরি করা, সেগুলিকে একটি ডেটা স্ট্রাকচারে সংরক্ষণ করা এবং তারপর সেগুলিকে আভিধানিক ক্রমে বা বর্ণানুক্রমিক ক্রমে সাজানো। তারপর ক্যোয়ারীতে X এর জন্য, আমাদের কাঠামো থেকে সংশ্লিষ্ট সাবয়ারে প্রিন্ট করতে হবে।

সাবস্ট্রিং সংরক্ষণ করতে, আমরা ভেক্টর ব্যবহার করব।

উদাহরণ

#include  namespace ব্যবহার করে std;vector substrings;void find_SortSubstrings(string s) { int len ​​=s.size(); জন্য (int i =0; i  

আউটপুট

কোয়েরি 1 :অভিধানের দিক থেকে 4র্থ ক্ষুদ্রতম সাব-স্ট্রিংটি হল nQuery 2 :লেক্সিকোগ্রাফিকভাবে 9তম ক্ষুদ্রতম সাব-স্ট্রিংটি হল ointQuery 3 :5ম ক্ষুদ্রতম সাব-স্ট্রিংটি অভিধানিকভাবে হল ntQuery 4 :15তম ক্ষুদ্রতম সাব-স্ট্রিংটি অভিধানিকভাবে হল t 
  1. C++ এ গোলকধাঁধা

  2. C++ এ সব গভীরতম নোড সহ সবচেয়ে ছোট সাবট্রি

  3. লিনাক্সে c++ এর জন্য শীর্ষ IDE কি?

  4. উইন্ডোতে c++ এর জন্য শীর্ষ IDE কি?