Pagini recente » Cod sursa (job #813884) | Cod sursa (job #1908978) | Cod sursa (job #2784072) | Cod sursa (job #487516) | Cod sursa (job #106613)
Cod sursa(job #106613)
#include <cstdio> //stdio.h
#include <cstdlib> //stdlib.h
#include <ctime>
#define maxn 600011
int *H[maxn];
int len[maxn]; // len[i]=lungimea listei i... se mai poate folosi H[i][0] ca lungime...
inline void insert(int v)
{
int h=v%maxn;
H[h]=(int*)realloc(H[h], sizeof(int)*(len[h]+1));
H[h][len[h]++]=v;
}
inline int find(int v)
{
int h=v%maxn;
for(int i=0;i<len[h];++i)
if(H[h][i]==v)return 1;
return 0;
}
int main()
{
srand(time(0));
double s=clock();
for(int i=1;i<=1000000;++i) insert(rand());
for(int i=1;i<=1000000;++i) find(rand());
printf("%lf\n", (clock()-s)/(double)CLOCKS_PER_SEC);
return 0;
}