View Code of Problem 1074

#include<cstdio>
#include<cstring>
#include<iostream>
#define N 100001
using namespace std;
int arr[N],n,k;
bool vis[10001];

void mymemset(bool *ss,int a)
{
    for(int i=1;i<=a;++i)
     ss[i] = false;
}

int main(void)
{
    while(cin>>n>>k)
    {
      mymemset(vis,n);
     int num = 0;
     for(int i=1;i<=n;++i)
      scanf("%d",&arr[i]);
       int cou = 0;
      for(int i=1;i<=n;++i)
      {
        if(!vis[arr[i]])
         {
             cou++;
             vis[arr[i]] = true;
         }
         if(cou==k)
        {
            num++;
            cou = 0;
            mymemset(vis,n);
        }
      }
      cout<<num+1<<endl;
    }
    return 0;
}

Double click to view unformatted code.


Back to problem 1074