Pagini recente » Cod sursa (job #757244) | Cod sursa (job #1998132) | Cod sursa (job #3200812) | Cod sursa (job #99534) | Cod sursa (job #2038527)
#include <cstdio>
#include <algorithm>
#include <vector>
using namespace std;
const int M = 666013;
int v[1050000];
int h(int key)
{
return key % M;
}
struct secv5
{
int f, x;
};
vector <secv5> T[666015];
secv5 aux;
int main()
{
freopen("secv5.in", "r", stdin);
freopen("secv5.out", "w", stdout);
int n, l, u, i, st, dr, a, frecv, ok;
long long nr = 0;
scanf("%d%d%d", &n, &l, &u);
for(i = 1 ; i <= n ; i ++)
scanf("%d", &v[i]);
frecv = 0;
nr = 0;
for(st = dr= 1 ; dr <= n ; dr ++)
{
a = h(v[dr]);
aux.x = v[dr];
aux.f = 1;
a = h(v[dr]);
vector <secv5>:: iterator it;
ok = 0;
for(it = T[a].begin() ; it != T[a].end() ; it ++)
if((*it).x == v[dr])
{
(*it).f ++, ok = 1;
break;
}
if(ok == 0)
T[a].push_back(aux);
if((*it).f >= 2)
frecv = frecv + (*it).f;
if(frecv < u)
{
}
}
/*for(i = 1 ; i <= 20 ; i ++)
{
vector <secv5>:: iterator it;
for(it = T[i].begin() ; it != T[i].end() ; it ++)
printf("%d " , (*it).x);
printf("\n");
}*/
return 0;
}