Chúng ta được cung cấp một chuỗi str [] và một số n. Mục đích là tìm tất cả các chuỗi con của str [] có độ dài n. Nếu chuỗi là “abcde” và n =3 thì các chuỗi con có độ dài 3 là “abc”, “bcd”, “cde” và số đếm là 3.
Hãy cho chúng tôi hiểu với các ví dụ.
Đầu vào - str [] =“máy tính” n =4
Đầu ra - Số chuỗi con có độ dài n có thể có từ chuỗi đã cho là - 5
Giải thích - Các chuỗi con có độ dài 4 là:“comp”, “ompu”, “mput”, “pute”, “death”
Đầu vào - str [] =“phát triển” n =5
Đầu ra - Đếm chuỗi con có độ dài n có thể có từ chuỗi đã cho là - 7
Giải thích - Các chuỗi con có độ dài 5 là:“devel”, “evelo”, “velop”, “elopm”, “lopme”, “opmen”, “pment”.
Phương pháp tiếp cận được sử dụng trong chương trình dưới đây như sau
Nếu chúng ta lấy độ dài của chuỗi str [] là L thì số chuỗi con có độ dài n bên trong str [] là Ln + 1. Nếu chuỗi là “abcdefghi” và n là 4 thì các chuỗi con sẽ là “abcd”, “bcde”, “cdef”, “defg”, “efgh”, “fghi”. Số đếm là 6. Ngoài ra 9-4 + 1 =6.
-
Lấy một chuỗi str.
-
Lấy n là số nguyên.
-
Hàm could_substring (string str, int length, int n) nhận một chuỗi, nó là độ dài, n và trả về số lượng các chuỗi con của str có độ dài n.
-
Thực hiện một số lượng biến.
-
Đặt số lượng =length-n + 1.
-
Kết quả trả về là kết quả cuối cùng.
Ví dụ
#include <bits/stdc++.h> using namespace std; int possible_substring(string str, int length, int n){ int count = length - n + 1; return count; } int main(){ string str = "learning"; int length = str.length(); int n = 2; cout<<"Count of substrings of length n possible from the given string are: "<<possible_substring(str, length, n); return 0; }
Đầu ra
Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau -
Count of substrings of length n possible from the given string are: 7