কম্পিউটার টিউটোরিয়াল

C++ দিয়ে একটি স্ট্রিংয়ের সাবস্ট্রিং-এর সংখ্যা বের করা

এই আর্টিকেলে আপনি জানবেন একটি দিয়ে হয়ে স্ট্রিংয়ে কতগুলো নন-এম্পটি (non-empty) সাবস্ট্রিং তৈরি করা সম্ভব।

C++ দিয়ে একটি স্ট্রিংয়ের সাবস্ট্রিং-এর সংখ্যা বের করা

ইনপুট: string = "moon" আউটপুট: 10 ব্যাখ্যা: সাবস্ট্রিংগুলো: 'm', 'o', 'o', 'n', 'mo', 'oo', 'on', 'moo', 'oon', 'moon'।
ইনপুট: string = "yellow" আউটপুট: 21
সমাধানের পদ্ধতি

স্ট্রিংয়ের দৈর্ঘ্য n হলে, উপরের উদাহরণ থেকে বোঝা যায় সব সম্ভাব্য সাবস্ট্রিং বের করতে হলে দৈর্ঘ্য n, (n-1), (n-2), ..., 2, 1-এর সাবস্ট্রিংগুলো যোগ করতে হবে।

মোট সাবস্ট্রিং = n + (n - 1) + (n - 2) + ... + 2 + 1

= n * (n + 1) / 2

সুতরাং, n হলো স্ট্রিংয়ের দৈর্ঘ্য হলে সাবস্ট্রিং সংখ্যা বের করার সূত্র: n * (n + 1) / 2।

উপরোক্ত পদ্ধতির C++ কোড

নিচে দিয়ে गयी C++ সিনট্যাক্স ব্যবহার করে এই সমস্যা সমাধান করা যায় −

উদাহরণ
#include<bits/stdc++.h> using namespace std; int main () {     string str = "yellow";     // স্ট্রিংয়ের দৈর্ঘ্য বের করা     int n = str.length ();     // সূত্র দিয়ে ফলাফল বের করা     int number_of_strings = n * (n + 1) / 2;     cout << "Number of substrings of a string : " << number_of_strings;     return 0; }
আউটপুট
Number of substrings of a string: 21
কোডের ব্যাখ্যা

এটি স্ট্রিংয়ের সব সম্ভাব্য সাবস্ট্রিং বের করার সবচেয়ে অপ্টিমিস্টিক এবং সহজ পদ্ধতি।

প্রথমে কোডে .length() ফাংশন দিয়ে স্ট্রিংয়ের দৈর্ঘ্য বের করা হয়েছে এবং সেই মানকে উপরের সূত্রে বসিয়ে ফলাফল প্রিন্ট করা হয়েছে।

উপসংহার

এই আর্টিকেলে আমরা একটি স্ট্রিংয়ের সাবস্ট্রিং সংখ্যা বের করার পদ্ধতি ব্যাখ্যা করেছি যেখানে প্রথমে সূত্র তৈরি করা হয়েছে এবং স্ট্রিংয়ের দৈর্ঘ্য দিয়ে ফলাফল বের করা হয়েছে। একই প্রোগ্রাম C, Java, Python ইত্যাদি ভাষায়ও লিখা যায়। আশা করি আপনি এই আর্টিকেলটি সহায়ক পাবেন।

  1. C++ ব্যবহার করে পেন্টাগোনাল পিরামিডাল সংখ্যা নির্ণয় করুন

  2. C++-এ ট্রেন স্টপেজ স্টেশন সংখ্যা বের করুন

  3. C++-এ সেটে রিফ্লেক্সিভ রিলেশন সংখ্যা বের করুন

  4. C++ ব্যবহার করে একটি সংখ্যায় একটি ডিজিটের ফ্রিকোয়েন্সি বের করা