Dada una string str y un entero L . La tarea es imprimir todas las substrings únicas de longitud L de la string str .
Ejemplos:
Entrada: str = “abca”, L=3
Salida: “abc”, “bca”Entrada: str = “aaaa”, L=3
Salida: “aaa”
Enfoque:
en primer lugar, genere toda la substring de longitud L y luego, usando set, podemos insertar una substring única hasta la longitud L y luego imprimir el resultado.
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ implementation #include <bits/stdc++.h> using namespace std; // Function to print the // unique sub-string of length n void result(string s, int n) { // set to store the strings unordered_set<string> st; for (int i = 0; i < (int)s.size(); i++) { string ans = ""; for (int j = i; j < (int)s.size(); j++) { ans += s[j]; // if the size of the string // is equal to 1 then insert if (ans.size() == n) { // inserting unique // sub-string of length L st.insert(ans); break; } } } // Printing the set of strings for (auto it : st) cout << it << " "; } // Driver Code int main() { string s = "abca"; int n = 3; // Function calling result(s, n); return 0; }
Java
// Java implementation of above approach import java.util.*; class GFG { // Function to print the // unique sub-String of length n static void result(String s, int n) { // set to store the Strings HashSet<String> st = new HashSet<String>(); for (int i = 0; i < (int)s.length(); i++) { String ans = ""; for (int j = i; j < (int)s.length(); j++) { ans += s.charAt(j); // if the size of the String // is equal to 1 then insert if (ans.length()== n) { // inserting unique // sub-String of length L st.add(ans); break; } } } // Printing the set of Strings for (String it : st) System.out.print(it + " "); } // Driver Code public static void main(String[] args) { String s = "abca"; int n = 3; // Function calling result(s, n); } } // This code is contributed by 29AjayKumar
Python3
# Python3 implementation of the above approach # Function to print the # unique sub-string of length n def result(s, n) : # set to store the strings st = set(); for i in range(len(s)) : ans = ""; for j in range(i, len(s)) : ans += s[j]; # if the size of the string # is equal to 1 then insert if (len(ans) == n) : # inserting unique # sub-string of length L st.add(ans); break; # Printing the set of strings for it in st : print(it, end = " "); # Driver Code if __name__ == "__main__" : s = "abca"; n = 3; # Function calling result(s, n); # This code is contributed by AnkitRai01
C#
// C# implementation for above approach using System; using System.Collections.Generic; class GFG { // Function to print the // unique sub-String of length n static void result(String s, int n) { // set to store the Strings HashSet<String> st = new HashSet<String>(); for (int i = 0; i < s.Length; i++) { String ans = ""; for (int j = i; j < s.Length; j++) { ans += s[j]; // if the size of the String // is equal to 1 then insert if (ans.Length == n) { // inserting unique // sub-String of length L st.Add(ans); break; } } } // Printing the set of Strings foreach (String it in st) Console.Write(it + " "); } // Driver Code public static void Main(String[] args) { String s = "abca"; int n = 3; // Function calling result(s, n); } } // This code is contributed by 29AjayKumar
Producción:
bca abc
Publicación traducida automáticamente
Artículo escrito por rohit kumar 61 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA