Help with Not All Flavours - NOTALLFL

Hello all, I am getting partially marks in this …plz help me out.
Approach- for this problem ,i have created a set and each time i am adding elements to my set and incrementing the count and as soon as the size of set becomes equal to number of flavours , i remove all elements of set except the last one ,and put count=1…and this loop continues…and i have store the maximum value of count in variable m then printing it at last.
plz. help me

here is my code:

#include <bits/stdc++.h>
using namespace std;

int main() {

int t;
cin>>t;
while(t--)
{
    int l,f;
    cin>>l>>f;
    int a[l];
    set<int >s;
    int count=0;
    int m=0;
    for (int i=0;i<l;i++)
    {
        cin>>a[i];
        
        s.insert(a[i]);
        
        if (s.size()<f)
           {count++;
             m=max(m,count);
           }
        else if (s.size()==f)
        {
            s.clear();
            s.insert(a[i]);
            count=1;
        }
        
    }
    
    m=max(m,count);
    
    
    cout<<m<<endl;
}
    
return 0;

}

check the behavior of your program for the following example. This might give you some hints.
8 3
1 3 1 1 2 2 1 2

output = 6

1 Like