Skip to main content

Posts

Showing posts with the label Smallest Distinct Window

Smallest Distinct Window

Task: Find the length of smallest distinct window of given string, which is having every letter in the string at least one time. Example: Input: 1 aab Output: 2 Here is the Code: Program in C++: #include<iostream> #include<bits/stdc++.h> using namespace std; int main()  { int t; cin>>t; while(t--) {     string s;     cin>>s;     int vis[128];     memset(vis, 0, sizeof(vis));     string t,sdw;     // Implementation of Logic     for(int i=0;i<s.length();i++)     {         vis[s[i]]++;         t=t+s[i];         if(vis[s[i]]==1)         {             sdw=t;         }         char c;         while(1)         {             c=t[0];             vis[c]--;             if(vis[c]!=0)             {                 t.erase(t.begin()+0);             }             else             {                 vis[c]++;                 break;             }         }         if(t.length()<sdw.length())         {